来自文本文件的字符串比较没有 return 任何东西
String Comparison from text file does not return anything
我是 Java 的初学者,我试图从文本文件中读取文本并将其与我在 class 中创建的字符串进行比较,出于某种原因它没有输出任何内容在控制台上,我不禁想知道为什么。这是我的简单代码
package BinaryServer;
import java.io.BufferedReader;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.IOException;
public class DriverState {
public static void main (String[]args) throws FileNotFoundException, IOException{
String DriverState="";
String Not="Not Drowsy";
String Yes="Drowsy";
try(BufferedReader br = new BufferedReader(new FileReader("C:/Users/Mohamed Ayman/Desktop/State.txt"))) {
StringBuilder sb = new StringBuilder();
String line = br.readLine();
while (line != null) {
sb.append(line);
sb.append(System.lineSeparator());
line = br.readLine();
}
DriverState = sb.toString();
}
if (DriverState.equals(Not)){
System.out.println("User is not drowsy");
}
else if (DriverState.equals(Yes)){
System.out.println("User is drowsy");
}
}
}
首先,您要向 DriverState
添加换行符,而 Yes
或 No
中不存在,因此这两个比较始终 return 为假。
附带说明:变量、字段和方法的 Java 命名约定是 lower camel case,因此 driverState
而不是 DriverState
。
我是 Java 的初学者,我试图从文本文件中读取文本并将其与我在 class 中创建的字符串进行比较,出于某种原因它没有输出任何内容在控制台上,我不禁想知道为什么。这是我的简单代码
package BinaryServer;
import java.io.BufferedReader;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.IOException;
public class DriverState {
public static void main (String[]args) throws FileNotFoundException, IOException{
String DriverState="";
String Not="Not Drowsy";
String Yes="Drowsy";
try(BufferedReader br = new BufferedReader(new FileReader("C:/Users/Mohamed Ayman/Desktop/State.txt"))) {
StringBuilder sb = new StringBuilder();
String line = br.readLine();
while (line != null) {
sb.append(line);
sb.append(System.lineSeparator());
line = br.readLine();
}
DriverState = sb.toString();
}
if (DriverState.equals(Not)){
System.out.println("User is not drowsy");
}
else if (DriverState.equals(Yes)){
System.out.println("User is drowsy");
}
}
}
首先,您要向 DriverState
添加换行符,而 Yes
或 No
中不存在,因此这两个比较始终 return 为假。
附带说明:变量、字段和方法的 Java 命名约定是 lower camel case,因此 driverState
而不是 DriverState
。