그래서이 앱에서 사용자가 프로젝트를 만들고 저장하면 SD 카드의 numberFrames.txt에 프레임 수가 저장됩니다. 그런 다음 다른 클래스의 파일을 검색합니다. 단,이 코드를 실행 한 후 nFrames의 축배를 화면에 표시하면 nFrames = 50입니다. 내가하는 nFrames의 초기화는 onCreate()에있는이 코드 바로 위에있는 0입니다.SD 카드의 txt 파일에서 int 값을 읽는 중
File sdcardLocal = Environment.getExternalStorageDirectory();
File dir = new File (sdcardLocal.getAbsolutePath() + "/Flipbook/"+customizeDialog.getTitle()+"/");
dir.mkdirs();
File fileNum = new File(dir, "numberFrames.txt");
FileWriter myFileWriter = null;
try {
myFileWriter = new FileWriter(fileNum);
} catch (IOException e) {
e.printStackTrace();
}
BufferedWriter out = new BufferedWriter(myFileWriter);
try {
String text = bitmaps.size()+"";
out.write(text);
out.close();
} catch (IOException e) {
e.printStackTrace();
}
이 파일을 검색합니다. 나는 nFrames에 대한 "50"값이 어디에서 왔는지 전혀 알지 못합니다. 이것에 대한 루프가 없기 때문에 저장 한 특정 프로젝트에는 프레임이 3 개 밖에 없다는 것을 압니다. 왜 이런거야?
FileInputStream is = null;
BufferedInputStream bis = null;
try {
is = new FileInputStream(new File(mFolderDialog.getPath()+"/numberFrames.txt"));
bis = new BufferedInputStream(is);
nFrames = bis.read();
}catch (IOException e) {
e.printStackTrace();
}
참으로 나는 잘못된 방향으로 향했다. 폴더에있는 항목의 수를 얻는 방법을 찾았고 처음부터 txt 파일을 저장해야 할 필요가 없어졌습니다. –