Java从控制台读取的行长度超过1024个字符



我有以下代码,第一个分支用于文件读取(适用于任何大小的文件行),但是我对控制台输入进行了相同的尝试,读取块在1024个字符之后。由于除了源流之外没有别的区别,我猜想System.in有一些限制。

你能告诉我在哪里可以换车吗?System.in.内部缓冲区大小?)

谢谢!

        if (input != null) {
            reader = new MyReader(new BufferedReader(new InputStreamReader(new FileInputStream(input))));
        } else {
            reader = new MyReader(new BufferedReader(new InputStreamReader(System.in)));
        }

也许你可以这样做:

StringBuilder sb = new StringBuilder();
int ch = 0;
while((ch = System.in.read()) != 'n') {
    sb.append((char)ch);
}
System.out.println(sb.toString());

最新更新