gpt4 book ai didi

java - 有没有一种简单的方法可以在文件输入期间保留java中的尾随制表符?

转载 作者:行者123 更新时间:2023-12-02 05:12:45 25 4
gpt4 key购买 nike

BufferedReader 和 Scanner 的 nextLine() 似乎通过删除所有尾随空白来提供太多帮助。我需要保留列,目前允许为空值,但犹豫是否使用 next() 或 getBytes() 识别制表符循环遍历每一行,因为可能有数百万行和数百列。

我在阅读行时缺少这两种方法,是否有其他方法?在这些方法中是否可以设置标志或任何其他选项来保留空格?我是否只是强制用户使用非空白字段?我并不是唯一一个尝试保留空白的人,不是吗?

我在从文件读取时遇到问题。我有这个代码

import java.lang.*;
import java.util.*;
import java.io.*;

public class stringTest
{
public static void main (String[] args) throws IOException
{
BufferedReader br = new BufferedReader(new FileReader("wtf.txt"));
String l = br.readLine();
while (l != null) {
System.out.println(l.split("\t").length);
l = br.readLine();
}
}
}

wtf.txt包含

h\tu\tr\tf\n
o\tm\tg\t\t\n

输出是

4
3

此外,如果我在所有选项卡的任何地方添加一行,即

h\tu\tr\tf\n
\t\t\t\t\t\n
o\tm\tg\t\t\n

输出为

4
0
3

我不认为这是拆分的问题,因为如果我使用代码

String s = "w\tt\tf\t\t\n";
System.out.println(""+s.split("\t").length);
String s1 = "w\tt\tf\tx\n";
System.out.println(""+s1.split("\t").length);
String s2 = "\t\t\t\t\t\t\n";
System.out.println(""+s2.split("\t").length);

输出为

5
4
6

最佳答案

BufferedReader.readLine() 确实保留空白。

关于java - 有没有一种简单的方法可以在文件输入期间保留java中的尾随制表符?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7372510/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com