0

TXT ファイルを Processing にインポートしました。インポートしたテキスト ファイルの改行をスペースに置き換えたいと考えています。これは処理を使用して可能ですか?

4

1 に答える 1

2

いくつかのこと... txtファイルをインポートしたので、loadStrings()メソッドで推測すると、文字列の配列が残っていると思います。配列を 1 つの文字列に結合するか、実際に改行 (または組み合わせ) を見つけて置き換えるかの 2 つのことを意味するようになりました。両方の可能性を見てみましょう。

最初に、loadStrings() が提供するのと同様の String 配列を想定します。

String [] importedText = {"aaaa bbb","cccc dddd","eeee ffff gggg"};

この配列を 1 つの文字列に結合する場合は、配列を反復処理し、次のように要素を別の文字列に追加します。

String singleLineText = "";

for(int i = 0;i < importedText.length; i++) {
   singleLineText += importedText[i] + " ";
}

これは、文字列の膨大な配列があり、次のように StringBuilder を使用できるパフォーマンス (最近の議論の余地のある問題)を求めていない限り、最も簡単で混乱の少ない方法です。

StringBuilder strb = new StringBuilder();
for(int i = 0;i < importedText.length; i++) {
   strb.append(importedText[i]);
   strb.append(" ");
}
String singleLineText = strb.toString();

一方、本当に改行を削除した後であれば、役に立たないプロローグをお詫びします。方法は次のとおりです:改行には 2 種類(2 文字) あります。 ) およびキャリッジ リターン (\r)。異なるオペレーティング システムでは異なるブレークが使用されるため、両方を考慮する必要があります。それでは、次のような文字列を想定してみましょう。

String lineWithBreaks = "aaaa\nbbbbb\rcccc\n\rddddd";

私たちの2つの休憩と同様に:

String linefeed = "\n";
String carriagereturn = "\r";

ブレーキを削除する方法は次のとおりです。

lineWithBreaks = lineWithBreaks.replace(linefeed," ");
lineWithBreaks = lineWithBreaks.replace(carriagereturn," ");

基本的に、2 つのセット文字列を空白文字 " " に置き換えます。

于 2013-08-09T22:17:03.883 に答える