2011-08-16 3 views
3

일부 파일을 내부 저장소에 저장하는 BlackBerry 장치 용 프로그램을 작성했습니다. 나는 적절한 디렉토리가 존재하는 경우 내가 확인하고 그렇지 않으면 내가 .mkdir();BlackBerry 파일 시스템

이 그들을 만들 저장

Connector.open("file:///store/BlackBerry/myDir/", Connector.READ_WRITE); 

내 응용 프로그램이 저장소에 액세스하려고 처음에 연결을 얻기 위해이 줄을 사용 프로세스가 완벽하게 두 개의 장치 (굵게 및 토치)에서 작동합니다. 이제 Curve에서이 응용 프로그램을 실행하려고하는데 현재 디렉토리를 만드는 데 실패하고 있습니다. 에서 "/ 저장": "파일 시스템 오류 (12) net.rin.device.api.io.file.File.IOException"

어떤 장치 이외의 뭔가를 사용하십니까

: 그것은 나에게 오류를 제공합니다 내부 저장소에 대한 경로? 또는이 장치의 해당 회선에서이 예외가 발생하지만 다른 회선에서는이 예외가 발생할 수있는 Curve 장치 내부 저장소에 대해 다른 내용이 있습니까?

답변

4

사용 가능한 루트 파일 시스템을 알아 보려면 FileSystemRegistry.listRoots()를 사용해야합니다. Bold 9000과 Torch 9800은 모두 내부 플래시 저장 공간을 가지고 있지만 IIRC는 그렇지 않습니다. 이 내용은 link from RIM을 참조하십시오.

1

이 오류를 유발하는 코드가 맞습니까? 12는 SQLite가 제대로 작동하지 않음을 나타냅니다. 어떤 사람이 개폐 (데이터베이스) 파일에서 이것을 빨리 얻은 곳인 this link을 확인하십시오. 그는 또한 Curve가 "deviteememory에서 SQLite"를 지원하지 않는다고 지적했습니다.

다른 비 SQL 관련 Google은 RIMs support pages을 찾습니다. 문제는 양쪽 출력 스트림과 파일 연결을 닫아야한다는 것이 었습니다.

+0

두 가지를 모두 보았습니다. 내 경우에는 어떤 일도 일어나지 않습니다. 나는 그것을 알아 냈다고 생각한다. "store /"의 루트는이 장치에서만 읽을 수 있습니다. 나는 "store/home/user/BlackBerry/mydir /"을 사용하기 시작했으며 작동하는 것으로 보인다. – FoamyGuy

2

루트 (file : /// store /)는이 장치에서만 읽을 수 있습니다. 작동 시키려면 방금 더 깊은 디렉토리로 이동했습니다. 지금 사용 중입니다 :

"file:///store/home/user/BlackBerry/myDir/"