在Java中将分隔符视为不同的标记
我很难找到如何读取文件并将“;”或“:”等分隔符作为单独的字符串输出 这就是我到目前为止所做的:在Java中将分隔符视为不同的标记,java,Java,我很难找到如何读取文件并将“;”或“:”等分隔符作为单独的字符串输出 这就是我到目前为止所做的: int i = 0; s = new Scanner(new BufferedReader(new FileReader("lab1.txt"))); while (s.hasNext()) { System.out.println(s.next()); i++; 输入文件lab1.txt为: cookies; and juice 输出: cookies; and juic
int i = 0;
s = new Scanner(new BufferedReader(new FileReader("lab1.txt")));
while (s.hasNext()) {
System.out.println(s.next());
i++;
输入文件lab1.txt为:
cookies; and juice
输出:
cookies;
and
juice
我希望输出为:
cookies
;
and
juice
你知道我该怎么做吗
谢谢。您需要为
扫描仪使用分隔符
它将使用一个正则表达式来定义您的分隔符-请参阅API
例如(此处替换为StringReader
进行复制):
输出
cookies
;
and
juice
您需要为扫描仪使用分隔符
它将使用一个正则表达式来定义您的分隔符-请参阅API
例如(此处替换为StringReader
进行复制):
输出
cookies
;
and
juice
分隔符总是分号、冒号还是空格?不是。我只是举了一些例子。我还需要诸如“+”(“”)等字符,用空格和标点符号分隔?分隔符总是分号、冒号还是空格?不。我只是举了一些例子。我还需要“+”(“”)等字符。按空格和标点符号分割?我正要建议使用delimiter
,但你抢先一步:谢谢你的进一步解释和链接。我在那里找到了我要找的东西。@Mena我在阅读没有任何分隔符的文本时遇到了问题,例如苹果汁曲奇等。我得到了这个错误:在java.util.Scanner.throwFor(未知源代码)的线程“main”java.util.NoSuchElementException中出现异常。你知道我该怎么做吗?它只在奇数位置打印单词,比如:apple cookies
@Codemon,使用我提供的示例和空格分隔的输入,它不会抛出NoSuchElementException
。也许是你代码的其他部分?我会问另一个问题。编辑我的意思是,用你的新输入。@Mena我刚刚用这个s.useDelimiter(“(?我正要建议使用delimiter
,但你抢先一步。PMena感谢你的进一步解释和链接。我在那里找到了我要找的内容。@Mena我在阅读没有任何分隔符的文本时遇到了问题,例如苹果汁曲奇等。我得到了以下错误:线程异常”main“java.util.Scanner.throwFor处的java.util.NoSuchElementException(未知源)
。你知道我该怎么做吗?它只在奇怪的位置打印单词,比如:苹果饼干
@Codemon,使用我提供的示例和你的空格分隔输入,它不会抛出无接触异常
。也许你的代码的其他部分?我会问一个不同的问题。编辑我的意思是,用你的新输入。@Mena I刚刚用这个s.useDelimiter(“(?)编辑了您的示例?