name=value
ペアのエントリを含む Java プロパティ ファイルをjson
文字列に変換する単純なパーサーを作成しています。以下はコードです。このコードでは、各エントリが新しい行にある必要があります。
sCurrentLine = br.readLine();
while ((sCurrentLine) != null)
{
config+=sCurrentLine.replace('=', ':');
sCurrentLine = br.readLine()
if(sCurrentLine!=null)
config+=",";
}
config+="}";
プロパティ ファイルに余分な空の新しい行がある場合を除いて、関数は正常に動作します。(例: props ファイルに最後のエントリを書き込んでから 2 回入力すると、ファイルには最後のエントリの後に 2 つの空の改行が含まれます) . 期待される出力は ですが{name1:value1,name2:value2}
、余分な新しい行が存在する上記のケースでは、出力は として得られ{name1:value1,name2:value2,}
ます。末尾,
の数は、空の新しい行の数とともに増加します。
readLine()
論理的には空行を読み取るべきではありませんが、これを変更するにはどうすればよいですか?