2017-05-02 7 views
0

は、私は特殊文字を使用してデータを分割しようとしているJavaの分割データのcsvファイル

{Id,OwnerUserId,CreationDate,ClosedDate,Score,Title,Body}としてCSVファイルを整理しています。ここでは例として私のデータ場合:

1040,254,2008-08-04T05:45:22Z,NA,42,How do I delete a file which is locked by another process in C#?,"<p>I'm looking for a way to delete a file which is locked by another process using C#. I suspect the method must be able to find which process is locking the file (perhaps by tracking the handles, although I'm not sure how to do this in C#) then close that process before being able to complete the file delete using <code>File.Delete()</code>.</p> 
" 
1070,236,2008-08-04T07:34:44Z,NA,17,Process size on UNIX,"<p>What is the correct way to get the process size on <code>Solaris, HP-UX</code> and <code>AIX</code>? Should we use <code>top</code> or <code>ps -o vsz</code> or something else?</p> 

カンマで区切られたデータが、いくつかの倍のタイトルや体が同様にカンマが含まれているようで、それがrecoredの間「は、どのように私は次のような結果を得ることができそうです。:

Array 1 { 1040,254,2008-08-04T05:45:22Z,NA,42, title data, body data } 
Array 2 { 1070,236,2008-08-04T07:34:44Z,NA,17, title data, body data } 

私は

String[] tokens = line.split(",(?![^<>]*</>)") 

を試してみましたが、うまくいきませんでした

+3

なぜホイールを再発明しようとしますか?有効なCSVデータを既に処理できるCSVフレームワークが数多くあります。ただそれらの1つを使用してください。 – Tom

+0

csvファイルが整形式(CSV仕様に準拠)の場合は、手動で解析するのではなく、おそらくCSVパーサを使用する必要があります。 – assylias

+0

これは役立ちます:https://www.mkyong.com/java/how-to-read-and-parse-csv-file-in-java/ – Obenland

答えて

0

YいくつかのCSV解析ライブラリを使用する必要があります。

問題は最後のものではありません。 CSVレコードは必ずしも1つの文字列で構成されているわけではありませんか、"シンボルの特別なエスケープシーケンスがありますか?

関連する問題