問題タブ [filewriter]

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.

0 投票する
2 に答える
6897 参照

javascript - HTML5 FileWriter truncate() メソッドを使用していますか?

私は HTML5 ファイル API を試していますが、よくわからないメソッドを使用する必要があります (どこにもほとんど文書化されていないため)。

FileWriter の truncate() メソッドについて話しているのですが、それが必要なことを実行してくれることはわかっています。基本的に、一部のファイル データにテキストを追加したり、seek() を使用して特定の部分を上書きしたりするのではなく、すべてのデータを別のもの (たとえば、"somedata" から "") で上書きしたいと考えています。

これは、truncate() が追加された、HTML5Rocks からの FileWriter セットアップのスニペットです。

writer.truncate() を呼び出すと、writer.write() を呼び出すとファイル例外エラーがスローされます。これは、readyState が WRITING に設定されているためだと思います。残念ながら、それを回避する方法がわかりません。

これに関するHTML5Rocks セクションを調べてみましたが、truncate() メソッドについては何も教えてくれませんでした (ただし、Webkit JS コンソールが教えてくれることから存在することはわかっています)。

簡単に言えば、エラーを発生させずに truncate() メソッドを正しく使用するにはどうすればよいですか?

0 投票する
1 に答える
620 参照

java - Netbeans で以前の形式の Java ファイルを復元する方法

私は BufferedWriter を使用して、Netbeans のコード ジェネレーター フレームワークの一部としてさまざまなファイルにテキストを書き込んでいました。テスト用のメイン クラスを実行したとき、以前のパッケージでテストに関与したすべてのクラスのファイルを見つけることができませんでした。むしろ、それらはデフォルトのパッケージに含まれており、ファイルを開いたときに、通常のテキストを表示できませんでした。上部に 1 本の長い水平線が表示され、エラーが表示されたフォーマット済みウィンドウのみが表示されます。"不正な文字 \0".

ファイルのサイズはそれぞれのテキストと同じですが、問題はテキストの形式だけだと思います.ローカルヒストリー>リバース削除を使用して、変更を取得しませんでした. このpbmを解決する方法を知っている人はいますか? 私が使用したコードは次のとおりです。コード内で out.write("some text here") という呼び出しを何度も使用して、gen. コードを出力ファイルに追加します。

0 投票する
2 に答える
574 参照

java - FileWriter の問題

hotspot vm の Windows 2008 サーバー (64 ビット) で Java アプリケーションを実行しています。

数か月前、アプリケーションのデッドロックの検出を支援するツールを作成しました。この 1 か月ほどの間、私に問題を引き起こしたのは、テキスト ファイルへの書き込みだけでした。

メイン スレッドは、一度にほぼ 5 秒であると想定される次の行で常にスタックしているようです。数秒後、アプリケーションは問題なく正常に動作し続けます。

何が原因なのかはわかりませんが、問題についての洞察をいただければ幸いです。私が書いているファイルは小さいので、それが問題になる可能性は低いです (異論がない限り)。

さらに情報が必要な場合は、お知らせください。

0 投票する
4 に答える
20298 参照

android - Android ファイル ブラウザーで表示されているファイルを Windows エクスプローラーで表示できない

Android プログラムを使用して、次のようなファイルを作成しました。

Android の「Astro」ファイル ブラウザに移動すると、hello.txt ファイルが表示されます/mnt/sdcard/Filesが、SD カードを Windows にマウントすると、そのフォルダにあった他の 4 つのファイルしか表示されず、hello.txt は表示されません。

Windows自体では、ファイルが非表示になっていないことを確認するためだけに、非表示のファイルを非表示にするオプションのチェックを外そうとしましたが、表示されません.

SDカードのルートにファイルを書き込もうとしましたが、やはり同じ問題です。Android ではファイルを表示できるのに、Windows ではファイルを表示できない可能性があることに驚いています。Android では、ファイルの内容も確認しましたが、すべて問題ないようです。

何が問題なのですか?ファイルの書き方が悪いのでしょうか?

PS: はい、マニフェスト許可android.permission.WRITE_EXTERNAL_STORAGEが追加されます。

0 投票する
3 に答える
5827 参照

android - アプリを「強制終了」しない限り、AndroidアプリによってSDカードに書き込まれたファイルをWindowsで表示できません

私は次のようにAndroidプログラムを介してファイルを作成しました。

プログラムはその役割を果たし、終了します。次に、Androidの[戻る]ボタンを押して、アプリケーションを閉じます。次にAndroidファイルブラウザ(Astroなど)にアクセスするとファイルは表示されますが、WindowsにSDカードをマウントするとファイルが表示されません。

これで、[設定] → [アプリケーション] → [アプリケーションの管理] → [強制停止] <アプリケーション>に移動すると、Windowsでもファイルを表示できます。

AndroidアプリでSDカードにファイルが書き込まれていて、毎回設定に移動して強制終了したくない場合に、Windowsでファイルを表示できるようにするにはどうすればよいですか。

実際にはファイルは正しく書き込まれていますが(私は思う)、Androidの「戻る」ボタンのデフォルトの動作ではアプリが強制終了されないため、アプリが強制終了されない限り、Androidの外部でファイルを開くことはできません( Android、私はまだそれを見ることができ、それを開くことさえできます)。

それで、この場合の最良の解決策は何でしょうか?アプリが閉じているときにアプリを自動的に強制終了する必要がありますか?System.exit()は厳密には推奨されないと言われています。

0 投票する
0 に答える
2249 参照

java - javaでprintwriterを使用してファイルに追加できません

printwriter オブジェクトを初期化する次のコードがあります--

最初に、以下の呼び出しを使用して上記の関数を呼び出します--

ファイルにデータを書き込んだ後、以下の呼び出しを使用して同じ関数を再度呼び出します-

「startiwriterassignor」への 2 回目の呼び出しの後、さらにデータがファイルに書き込まれます (追加されます)。ただし、新しいデータがファイル assignor.txt に追加されていません。このエラーを修正するにはどうすればよいですか?

0 投票する
2 に答える
1770 参照

java - 私のプログラムでファイル書き込みを高速化/最適化する方法

Ok。1,000,000,000 件のレコードを入力として 20 GB のファイルを受け取り、アクセスを高速化するためにある種のインデックスを作成するプログラムを作成することになっています。基本的に、1 bil のレコードを 10 個のバケットと 10 個のサブバケットに分割することにしました。適切なバケットを見つけるために、レコードの 2 つのハッシュ値を計算しています。ここで、サブバケットごとに 1 つずつ、10*10 ファイルを作成します。そして、入力ファイルからレコードをハッシュするときに、100 個のファイルのどれに移動するかを決定します。次に、レコードのオフセットをその特定のファイルに追加します。10,000 レコードのサンプル ファイルでこれをテストしました。このプロセスを10回繰り返しました。100,000 レコード ファイルを効果的にエミュレートします。これには約18秒かかります。これは、1 ビルのレコード ファイルに対して同じことを行うのに永遠にかかることを意味します。とにかく、執筆をスピードアップ/最適化できますか。

0 投票する
3 に答える
9153 参照

java - BufferedWriterとFileWriterを使用して、同じファイルにデータを書き込む際に同期を実装する必要がありますか?

私はWebmethodsIntegrationServerに取り組んでいます。内部には、BufferedWriterとFileWriterを使用してログファイル(server.log)にデータを書き込むための静的Javaメソッドの形式のJavaサービスがあります。静的メソッドコードは次のようになります。

注:
-コードは、例として簡略化されています。
-writeLogFileメソッドの宣言と属性を変更できません。つまり、常に次のようになります。public staticvoidwriteLogFile。この種の変更は禁止されています:publicsynchronizedvoidwriteLogFile。

writeLogFileメソッドが異なるインスタンスによって呼び出される可能性があるため、2つ以上のインスタンスが同時に同じリソース(server.log)にアクセスしないようにする必要があります。つまり、2つのインスタンスがserver.logにアクセスしようとした場合、一方のインスタンスは別のインスタンスがserver.logへのデータの書き込みを完了するのを待つ必要があります。

質問は次のとおりです。上記のコードを変更する必要がありますか?もしそうなら、私はどのような変更を行う必要がありますか?java staticメソッド内に「同期」を実装する必要がありますか?

@EJP:
では、同期を実装するのに最適なコードは次のうちどれですか?

1)

2)

3)

4)他の意見?

ありがとう。

0 投票する
2 に答える
686 参照

java - 複数行のJTextAreaをtxtファイルに書き込む

そのためJTextArea、ユーザー入力用の があり、ボタンをクリックするとテキスト ファイルに書き込まれます。両方がsetLineWrapあり、 にsetWrapStyleWord設定されtrueていJTextAreaます。

テキスト ボックスに表示される正確な方法でテキスト ファイルに書き込みたいと思います。

replace("\n", System.getProperty("line.separator"))機能する内容をString保持することを試みましたがJTextArea、ユーザーが入力を入力するときに実際にリターンキーを押した場合にのみ、ユーザーが入力を続けて行末に到達した場合にのみ、その下の行は機能しreplaceません。

また、 を使用してみStringBufferました。行に収まる文字数を計算し、各行の最後に新しい行を実行したので、最初の行では位置、2 行目、3行目などfor loop insertingに追加します。 . しかし、一部の文字は他の文字よりも小さいため、すべての状況で機能するとは限らないことにすぐに気付きました。90180270jp

私がやりたいのは、行末を計算する方法を見つけてinsert、新しい行の場所を知ることですが、他の提案も受け付けています。ありがとう。私のコードの一部を確認するのに役立つと思われる場合は、質問してください。

更新 これを行うためのコードを実装する代わりに、私はこのプログラムを使用する唯一の人の 1 人になる人と話をしました。彼は通常のメモ帳形式で問題ありませんでした。メモ帳形式の設定により、行全体を読むためにサイドスクロールを使用する必要がなくなります。ご入力いただきありがとうございます

0 投票する
1 に答える
377 参照

java - Javaでファイルを作成する

これは簡単に聞こえるかもしれませんが、このコードでデバッグすると、デバッグが停止し、例外がスローされるかどうかがわかりません。私は何が間違っているのですか?