0

我有一个基于“url”列的值排序的 CSV。我想为每个“url”值选择前三行。如果 url 值的行小于 3(2 或 1),我还是想选择它们。

起始 CSV 如下:

 url;review;priority;length
 zonk-di-brigada-igor-torino;"Ora sono tornati i vecchi gestori.";0;15
 zonk-di-brigada-igor-torino;"Buona qualità dei prodotti.";0;13
 zonk-di-brigada-igor-torino;"Ultimamente però l'apericena è scaduto.";0;13
 zonk-di-brigada-igor-torino;"I coktail sono buoni.";0;11
 zonk-di-brigada-igor-torino;"Per non parlare dei cocktail.";0;10
 zonk-di-brigada-igor-torino;"Locale molto bello.";0;7
 zichella-torino;"Che pasticceria";1;19
 zichella-torino;"Bar pasticceria di classe.";1;18

我想获得:

 url;review
 zonk-di-brigada-igor-torino;"Ora sono tornati i vecchi gestori."
 zonk-di-brigada-igor-torino;"Buona qualità dei prodotti."
 zonk-di-brigada-igor-torino;"Ultimamente però l'apericena è scaduto."
 zichella-torino;"Che pasticceria"
 zichella-torino;"Bar pasticceria di classe."

我从这段代码开始,但只选择了一行。

 ArrayList<String> urls = new ArrayList<String>();
 String url, text;
 for (CSVRecord csvRecord : csvParserMatrix) 
 {
   url = csvRecord.get("url");
   text = csvRecord.get("review");
   if(!urls.contains(url))
   {
        urls.add(url);
        bw.write(url+";"+'"'+text+'"'+"\n");
   }
 }
4

0 回答 0