ファイルをストリーミングするバッファリングされたリーダーがあります。現在のところ2つのケースがあります:BufferedReaderが別のラインセパレータで混乱しています
1台のPCで生成されたファイルをストリーミングしています。ファイル1としましょう。 別のコンピュータで生成されたファイルをストリーミングしています。それをFile2としましょう。
私は自分の問題がEOLによって引き起こされていると仮定しています。
BufferedReaderは両方のファイルを読み込みますが、File2の場合はは改行ごとに余分な空行を読み込みます。また
、私はラインが、それは本当返さないであることを考えるとline.equalsIgnoreCase("abc")
を、使用して線を比較します。どのように第二のファイルを印刷空行
public class JavaApplication {
/**
* @param args the command line arguments
*/
public static void main(String[] args) throws IOException {
File file = new File("C:/Users/User/Downloads/html (2).htm");
BufferedReader in = new BufferedReader(new InputStreamReader(new FileInputStream(file), "UTF-8"));
String line = "";
while ((line = in.readLine()) != null) {
System.out.println(line);
}
}
注:
複製問題には2つのリンクに設けられた2つのファイルと一緒に使用このコードを各行の後に...
私は検索していますgを試して検索して試してみると解決策は思い付きませんでした。
これを修正する方法はありますか? (特に比較対象は?)
'\ r'、CR、0x0dと' \ n'、LF、0x0aの間に混乱があると思います。 '\ n \ r'の代わりに' \ n \ r'を使うと、BufferedReaderは '\ n' = Unixスタイルと' \ r' =古いMacスタイルの2つの行を認識し、 '\ r \ n'はWindowsスタイル。 –
'\ r \ n'が1行おきに空行を読むのであれば、それはもっと意味がありますが、それは' \ r'です... 私はこの答えを使って、それは完全に機能していません^^ http:// stackoverflow。com/a/13828045/3653975 – Maverick283
@JoopEggenまだ問題は何ですか?私は、新しい行を取得するために使用するコードを表示するための答えを更新し、行を比較する...ヘルプは大いに感謝している – Maverick283