繁体   English   中英

你能在txt文件java中做一个列吗

[英]can you make a sort of column in txt file java

我有一个包含如下行的文本文件:

00001:dexter:1989:9

换言之,每行包含字段,其中字段分隔符是冒号( : )。 有没有办法访问每个字段并获取例如dexter作为字符串? 我试过使用useDelimeter()方法,然后读取第一行,但它不是字符串。 这是程序:

Scanner sc;
String token=null;
sc = new Scanner("00001:dexter:1989:9");
sc.useDelimiter(":");
while (sc.hasNext()) {
    token = sc.next();
    System.out.println(token);
}
System.out.println(ss.substring(0, ss.indexOf(":")));

有没有办法随时将任何字段作为字符串读取?
我是 Java 新手,也是 SO 新手,所以任何答案都将不胜感激。 谢谢你。

我能想到的最简单的方法是:

String getColumn(int n,string s)
{
   return ( n <= 0 ) ? s.subString(0,s.indexOf(":")) : getColumn(--n,s.subString(s.indexOf(":") + 1 , s.length);
}

getColumn(1,"00001:dexter:1989:9"); // Returns dexter

此函数递归地拆分字符串,直到所需的列是它开头的列。 然后它拆分该列并返回它。


输入 a:b:c , n = 1

  • 第 1 步 -> b:c
  • 步骤 2 -> b

简而言之,它从前面删除列,直到 n > 0,然后从后面删除所有列,只留下所需的列。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM