問題タブ [mkdirs]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
android - 他のアプリケーションが占有している場合、アプリケーションはフォルダーの作成に失敗しました
これは私の質問です。
まず、作成時に個人用フォルダーを作成しました
私のアプリケーションで 2 番目に、別のアプリケーションから png などのファイルを受け取ることができ、受け取ったファイルは /Android/data/packageName/cache/myfolder/hashcode/example.png に保存されています。そして、インテント チューザーからギャラリーを選択して開きます。
ギャラリーが開いていて、png ファイルが表示されると、アプリケーションのプロセスを強制終了してアンインストールします。
最後に、アプリケーションを再度インストールします。パス /Android/data/packageName が作成されていません。そして、それを示す関数を作成します
null を返します!
アドバイスをください!ありがとうございました。
java - Findbugs "メソッドは例外的な戻り値を無視します" java.io.File.mkdirs()
アプリに次のコードがあります。
(Android Studioで)findbugsを実行すると、報告されますBad Practice
Bad use of return value from method
Method ignores exceptional return value of java.io.File.mkdirs()
Javadoc はjava.io.File.mkdirs()
、ディレクトリが作成された場合は true、失敗した場合、またはディレクトリが既に存在する場合は false を返すと述べているため、!f.exists()
チェックが行われます。
私は findbugs メッセージを無視したくありません-警告でさえありませんが、戻り値が明らかにチェックされているため、これを解決する方法がわかりません。
try{...}catch (SecurityException){...}
この投稿からの提案として追加したことに注意してください: https://stackoverflow.com/a/23631948/1423896、しかし違いはありません。
java - このメソッドが大量のメモリを消費する理由は何ですか?
このメソッドをデバッグしようとしていますが、何も機能していないようです...
条件文で pathName.add() が問題を引き起こしていると思われます。このメソッドが実行された後、もう一度実行すると 50 MB が使用され、800 MB に達するまでに 150 MB が使用されます。しかし、すべては割り当てられたスペースです。GC がこの混乱をきれいにしないのはなぜですか ???
Ps このメソッドは、条件付きステートメントで構築された指定されたパスに基づいてディレクトリを作成しました
Ps Ps メソッド writeDir(...) は actionListener 内から呼び出されます (GUI のボタンがクリックされたとき)。ボタンは頻繁にクリックできます
Ps Ps Ps Andreas の提案を試しましたが、部分的に機能しました。pathName.clean() を呼び出した後、eden スペースは削除されましたが、割り当てられたスペースはまだ増加しており、最大数に達しました。
あなたの意見に興味があります:)ありがとう
writeDir(...) を呼び出す
書き込みディレクトリ(...)
java - System.getProperty と mkdirs に関する入力の検証と表現
次のコードを使用します。
次の結果を取得するための Fortify の脆弱性スキャンの後: 入力の検証と表現。
問題の発生を回避する方法は?
java - Java mkdirs がうまく機能しませんでした (Android プラットフォームで)
問題がありますFile.mkdirs().
[私のテストコード]
いくつかのファイルをダウンロードする前にフォルダーを作成するときに、このコードを使用しました。このコードは本当にうまく機能しますが、毎回ではありません。めったに、まさにその場所で「失敗した」と報告されました。(チェックポイント!)
- dest フォルダの存在を確認しました。
- destフォルダを作ってみました。
- destの親のタイプ(フォルダーかどうか)を確認しました
- dest フォルダと同じ名前のファイルを削除しようとしています。(存在する場合)
- 最後に、もう一度 dest フォルダーを作成してみます。
ただし、ステップ4が失敗することもありました。itemPath(dest フォルダー) が存在しません。itemPath は構成できません。itemPath の親が存在し、彼女はフォルダーです。itemPathと同名のファイルはありません。では、なぜ File.mkdirs で destFolder を作成できないのでしょうか?
論理的な穴はありますか?
私にお知らせください。
java - 私のコードが Windows ではディレクトリを作成するのに Linux JAVA では作成しない理由
私はそのような mkdirs コードを持っています。
Windowsでは正常に機能し、ディレクトリを作成しますが、Linuxでは機能しません..
android - Android File.mkdirs() でキャッシュをクリアした後、false が返され、ディレクトリを作成できません
このコードは、デバイスの設定/アプリ/アプリ メニューからキャッシュをクリアするまで完全に機能します。
回避策として、このファイルを削除して再度作成し、他の(システム)アプリによるロックを解除しようとしましたが、それも失敗しました。デバイスの再起動のみがその問題を解決します。どんな助けでも大歓迎です。ありがとうございました!
android - Android 6.0 で mkdirs を使用してディレクトリを作成できません (ストレージのパーミッションは OK)
アプリのソース コードを新しいランタイム アクセス許可で Android 6.0 に更新しようとしています。
ただし、ユーザーがアプリにストレージ権限を付与した場合、アプリ'onRequestPermissionsResult'
は'mkdirs'
.
AndroidManifest.xml に、次のものを入れました'uses-permission'
。
次に、MainActivity でパーミッション リクエストを処理します。
エミュレーターでアプリを起動すると、要求ダイアログが表示されます。本体'onRequestPermissionsResult'
が実行される許可を許可(writeAccepted=true)
しますが、フォルダーは作成されません!
これは、LogCat に表示されるものです。
理由がわかりません。
誰か助けてください。
ありがとうございました、
ミルコ
android - File.mkdirs() はフォルダーを作成しません - Android Marshmallow (API 23)
Android マニフェストのアクセス許可
Javaファイル(初回)
Java ファイル (2 回目の試行)
残念ながら、どちらの試みも必要な newAppFolder ファイルを作成しません。誰かが私が間違っていることを教えてもらえますか?
注: 2 回目の試行では、アプリケーションのトーストに [フォルダーが作成されました] と表示され続けます。