一部のデータを保存するためにアプリ用のパブリックフォルダを作成しようとしています。 私の目標は、データを保存するために現在の日付に基づいて名前が付けられたメインフォルダとサブフォルダを作成することです。データはPC経由でアクセス可能であると想定されています。 問題は、電話[画像1](Bluetoothファイル転送アプリケーションを使用)を介してファイルにアクセスするときにすべてが機能している間に、PCがサブフォルダ[画像2]を認識できないことです。パブリックファイルをアンドロイドに保存していますが、PCからフォルダにアクセスすることはできません
[画像1]すべての多くのことを試してみました、私は多くの答えを見てきました
[画像2]サブフォルダに取り組んが、解決策を見つけていません。 私のコードは次のとおりです。
public void createFile() {
calendar_time = Calendar.getInstance(Locale.getDefault());
int hour = calendar_time.get(Calendar.HOUR_OF_DAY);
int minute = calendar_time.get(Calendar.MINUTE);
int second = calendar_time.get(Calendar.SECOND);
String time=String.valueOf(hour)+":"+String.valueOf(minute)+":"+String.valueOf(second);
String sFileName=date+" "+time+" Part "+String.valueOf(file_counter)+".txt";
try {
File root = new File(Environment.getExternalStoragePublicDirectory(
Environment.DIRECTORY_DOCUMENTS), "Main folder/"+date);
if (!root.exists()) {
root.mkdirs();
}
root.setExecutable(true);
root.setReadable(true);
root.setWritable(true);
MediaScannerConnection.scanFile(context, new String[] { root.toString() }, null,
new MediaScannerConnection.OnScanCompletedListener() {
public void onScanCompleted(String path, Uri uri) {
}
});
File myfile = new File(root, sFileName);
writer = new FileWriter(myfile);
writer.append("Unit\n\n");
writer.append("#\tValue \tX \tY \tZ \tTime\n\n");
readyToRecord=true;
} catch (IOException e) {
e.printStackTrace();
Toast.makeText(context, "Error creating file", Toast.LENGTH_SHORT).show();
stop();
}
}
私はそれは、彼らがパスとファイルを作成するための責任を負いませんので、私は私の他の機能が含まれていない
root.setExecutable(true);
root.setReadable(true);
root.setWritable(true);
MediaScannerConnection.scanFile(context, new String[] { root.toString() }, null,
new MediaScannerConnection.OnScanCompletedListener() {
public void onScanCompleted(String path, Uri uri) {
}
});
役立つだろう読んでいるので、私は次のコードを追加しました。 私があなたを助けてくれることを願っています。 はないroot
、スキャンmyfile
あなた
残念ながら、それは何の違いもありませんでした。 – mremremre1
私は別のデバイスで試してみます – mremremre1
あなたの提案といくつかの異なる方法でそれを修正しました。ありがとうございました – mremremre1