Open yukiarai opened 10 years ago
orangesignal-csv-2.2.1.jarを使用しています。 おそれいりますが、CsvConfigで、setIgnoreEmptyLines(true)を指定した際の動作について ご教示ください。
aaa,aaa,aaa[\r\n] [\r\n] bbb,bbb,bbb[\r\n] [eof]
上記のような内容のCSVファイルを読み取らせようとした際、aaa,aaa,aaaの行しか読み取られない。 bbb,bbb,bbbの行は無視される、という動作になることを確認しています。 これは、意図された仕様なのでしょうか。ドキュメント上、setIgnoreEmptyLines(true)に関しては 「空行を無視する」としか記述されていないので、ちょっと驚きました。
https://github.com/orangesignal/orangesignal-csv/issues/30 も拝見いたしました。 この件の再現コードとなっているソースをorangesignal-csv-2.2.1.jarで実行してみたのですが、 TEST_STR = "1,name\r\n\r\n2,dare" というデータをsetIgnoreEmptyLines(true)で 読み込むと、"1,name" のところまでしか読み取られていない、という動作になっています。
現象として、想定どおりの動作であるのか、ご教示いただけると幸いです。 どうぞよろしくお願い申し上げます。
お問い合わせありがとうございます。現象を確認しました。 想定の挙動ではありませんので、原因を調査中です。
CsvReader では List 形式と List 形式で読込を行うことが可能なのですが、#30 で CsvConfig.setIgnoreEmptyLines(true) の場合に List は null を返すべきと、仕様策定を誤って修正したことに起因することが解りました。つまり CsvReader の挙動が期待される動作ではないことに起因します。いまいま仕様や修正について検討中です。
御回答ありがとうございました。とりあえず、setIgnoreEmptyLines(true)は指定せず、自前で、空行にあたったときの制御を行う形で、いまいまは対応いたします。
orangesignal-csv-2.2.1.jarを使用しています。 おそれいりますが、CsvConfigで、setIgnoreEmptyLines(true)を指定した際の動作について ご教示ください。
aaa,aaa,aaa[\r\n] [\r\n] bbb,bbb,bbb[\r\n] [eof]
上記のような内容のCSVファイルを読み取らせようとした際、aaa,aaa,aaaの行しか読み取られない。 bbb,bbb,bbbの行は無視される、という動作になることを確認しています。 これは、意図された仕様なのでしょうか。ドキュメント上、setIgnoreEmptyLines(true)に関しては 「空行を無視する」としか記述されていないので、ちょっと驚きました。
https://github.com/orangesignal/orangesignal-csv/issues/30 も拝見いたしました。 この件の再現コードとなっているソースをorangesignal-csv-2.2.1.jarで実行してみたのですが、 TEST_STR = "1,name\r\n\r\n2,dare" というデータをsetIgnoreEmptyLines(true)で 読み込むと、"1,name" のところまでしか読み取られていない、という動作になっています。
現象として、想定どおりの動作であるのか、ご教示いただけると幸いです。 どうぞよろしくお願い申し上げます。