我想解析这个CSV字符串:
DEV-82,2d155089e1b01eb,AYNF Terminal 2,ENABLED,PAN_FZN1_AD5,SIT-4,MetesCronos,DGP-83,AllYouNeedFresh,20170902042148,356927070012616,!,!
在JAVA中写出一个CSV:
2d155089e1b01eb,SIT-4,MetesCronos,356927070012616
有没有办法从琴弦中取出第n个位置?
但是我的字符串不只是一行,有时是50行,有时是75行等。
我的Stringresult是:
DEV-1,77EC0067C8A1BA6462FCA25F8B1DFBE289F6A3EE,6110 WM,DISABLED,HON_6110_WM6,SIT-3,letesena,DGP-1,6110WM,,,,
DEV-2,01B406234550B1A688000050BF7A60E2,MC3090 CE,DISABLED,MOT_MC3000_CE50,SIT-3,Letesena,DGP-2,MC3090,,,,
DEV-37,23B8EB959C4004D373EAB6A9ACA7173DE15266F1,MC67 AlexH,ENABLED,MOT_MC67_WM6,SIT-4,Letesonos,DGP-32,MCL-Client_MC67,20170915220217,352344052521784,!,!
DEV-45 ...
我想把第2,第5和第11列的每一行写下来并写一个CSV:
77EC0067C8A1BA6462FCA25F8B1DFBE289F6A3EE,SIT-3,6110WM
01B406234550B1A688000050BF7A60E2,SIT-3,MC3090
23B8EB959C4004D373EAB6A9ACA7173DE15266F1,SIT-4,MCL-Client_MC67
答案 0 :(得分:1)
使用String.split(分隔符),然后从结果数组中获取第n个条目。
https://docs.oracle.com/javase/7/docs/api/java/lang/String.html#split(java.lang.String)
答案 1 :(得分:0)
使用String.split(",")
然后从结果数组中获取第n个,或者更好地使用已经处理了大量角落情况的工具(例如,CSV行中没有足够的部分; UTF-8物料清单)。这样的工具例如是Commons CSV。