gpt4 book ai didi

java - 如何使用 Scanner 识别回车

转载 作者:行者123 更新时间:2023-11-29 08:49:07 25 4
gpt4 key购买 nike

我需要从文件中读入所有字符,然后将它们转换为摩尔斯电码。这是简单的部分。但是我不知道如何让扫描仪识别回车然后让打印器打印出回车。这是我转换文件的代码:

public void encodeFile(String inputFilename, String outputFilename) throws Exception {

// Scanner to read in and a printwriter to output what we encode
Scanner in = new Scanner(new File(inputFilename));
PrintWriter output = new PrintWriter(new FileOutputStream(outputFilename));

//loop to run through the file and print out the encoded message
while (in.hasNext()) {

//temp string to hold the next word in the file
String temp = null;
temp = in.next();

//loop to make the magic happen
for (int i = 0; i < temp.length(); i++) {
char m; //temp char to hold the letter to encode
m = temp.charAt(i); //gets the next char, sets temp equal to it
output.print(toCode.get(m)); //prints the encoded string
output.print(" ");
}
//prints a * in place of a space
//output.print("*");
}

//closes the file; as is tradition
output.close();

}

最佳答案

不使用 in.hasNext(),而是使用 in.hasNextLine() 并使用 in.nextLine() 启动 temp(现在你知道 temp 是一行,后面是回车)

现在,temp 将是一个具有多个空格的字符串,因为我猜您会想要放置一个 |单词之间(莫尔斯电码)。为此,将空格字符添加到返回“|”的 toCode() 方法(或者任何你想放在单词之间的东西)

为了打印你使用的回车

output.print("\n");

关于java - 如何使用 Scanner 识别回车,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23597062/

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