私は今、いくつかの時間のgetFileStreamPath狂気を理解しようとしました。 誰かがパス= "shop/crates/fruits"が存在するかどうかをテストする方法を説明できますか? テストを簡素化するために、私はセグメントを分割してしまっています。 私はそれを持っていると思った。しかし、店は存在するが、木箱はありません.Weird! それとも?Context.getFileStreamPathは、ファイルパスが存在するかどうかテストしようとしていますか?
3
A
答えて
0
public static Boolean pathExists(String path, Context ctx)
{
Boolean result = false;
String[] pathSegments = path.split("/");
String pathStr = "";
for(int i = 0;i<pathSegments.length;i++)
{
pathStr += pathSegments[i];
if(!ctx.getFileStreamPath(pathStr).exists())
{
result = false;
break;
}
pathStr += "/";
result = true;
}
return result;
}
まず、getFileStreamPath
はopenFileOutput(文字列、整数)で作成されたファイルが格納されているファイルシステム上の絶対パスを返します。
内部または外部ストレージのパスをテストしようとしていますか?外部ストレージを使用する場合は、getExternalFilesDir()
を使用してください。あなたはres/raw
のような内部のパッケージ埋め込まれたリソースを使用したい場合は、それはまた別の話だ:
Android how to get access to raw resources that i put in res folder?
しかし、私はそれはあなたがそれを得るために想定されているように動作するとは思いません。
このhttp://developer.android.com/guide/topics/data/data-storage.html を慎重にお読みください。
ここにUsing the Internal Storage
の章をお読みください。
も参照してください:
How to create a file on Android Internal Storage?
Read/write file to internal private storage
http://www.vogella.de/articles/AndroidFileSystem/article.html
2
うん、安っぽいアンドロイドのAPIを。 秘密のソースはcontext.getFilesDir()を使用します。あなたのファイル:
File file = new File(context.getFilesDir() + File.separator + path);
その後、ファイルは正常に動作します。
関連する問題
- 1. mixinが存在するかどうかテストできますか?
- 2. ファイルがメイクファイルのターゲットに存在するかどうかテストし、存在しない場合は終了する
- 3. 値が存在するかどうかをテストするには?
- 4. PHPでリモートイメージファイルが存在するかどうかをテストするにはどうすればよいですか?
- 5. ファイルが内部ストレージに存在するかどうかを確認しようとしています
- 6. Androidにインテントエクストラが存在するかどうかはどのようにして確認できますか?
- 7. アレイが存在するかどうかを確認していますか?
- 8. スクリプト内にperl modが存在するかどうかのテスト
- 9. テストjavascriptウィジェットが存在するかどうか
- 10. オブジェクトが存在するかどうかPythonテスト
- 11. PHPはファイルが存在し、ディレクトリが存在しないかどうかを確認します
- 12. 要素をarraylistに追加して番号がすでに存在するかどうかをテストします
- 13. 行が存在しないかどうか確認する[MySQL]
- 14. JavaScriptオブジェクトにプロパティが存在するかどうかをテストする正しい方法は何ですか?
- 15. MySQLテーブルが存在するかどうかをチェックしていないかどうかを確認する
- 16. Strutsタグを使用して特定のリクエストパラメータが存在するかどうかをテストするにはどうすればよいですか?
- 17. ファイルが存在するかどうか
- 18. javaファイルが存在するかどうかをチェックして開きますか?
- 19. テーブルが既に存在するかどうかをテストするには?
- 20. 2つのファイルが存在するかどうかテストする方法は?
- 21. WebOS:ファイルが存在するかどうかをテストする方法は?
- 22. CasperJSにセレクターが存在するかどうかをテストするには?
- 23. オートプレフィクサーが動作しているかどうかをテストするにはどうすればよいですか?
- 24. イメージにウイルスはどのように存在しますか?
- 25. ウィンドウが存在するかどうかがチェックされると、Webワーカーは例外をスローしています
- 26. XCUIElementsQueryを使用してUIViewの存在をテストするにはどうすればよいですか?
- 27. ファイルがすでに存在し、書き込みしようとするとどうなりますか?
- 28. jQueryを使用して要素がiFrameに存在するかどうかをテストする方法は?
- 29. SQL文を使用してテーブルにカラムが存在するかどうかをテストするには
- 30. クッキーが存在するかどうかを確認するには?私はクッキーが存在する場合、それは、このコードに有効期限が切れていたかどうかを判断しようとしていた
_どのように動作するかわかりません。まず、getFileStreamPathは、openFileOutput(String、int)で作成されたファイルが格納されているファイルシステムの絶対パスを返します。_ 私は全く同意します。 ファイルとディレクトリの操作は常に醜いです。 Androidファイルシステムは、平均ファイルシステムオブジェクトよりも醜いです。 あなたはRTFMを持っていなければなりません。その期限が間に合わない場合を除いて。 私はこの姿勢で私が一人ではないことを知っています。そこにはハックしようとしている多くの欲求不満の人がいる。 あまりにも悪い...私に完全な再設計のようです。 – DevNull