我的代码在这里: -
package testFiles;
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.FileWriter;
import java.util.Scanner;
public class ReadFile {
public static void main(String[] args){
FileReader in=null;
FileWriter out=null;
String line;
File fp=new File("readFrom.txt");
try {
Scanner sc=new Scanner(fp);
//System.out.println(sc.next());
if(sc.next().contentEquals("Coding")){
System.out.println("####");
while(sc.next().contentEquals("\n")==false){
if(sc.nextInt()==1){
System.out.println("Coding is set.");
}
else{
System.out.println("Coding is not set.");
}
}
}
} catch (FileNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
我打算做什么:我想从文件中读出一个单词" Coding"。在这个word.ie之后的空格后面会有一个整数。该文件将是:
Coding 1
阅读'编码'程序应该读取相应的数字并返回'设置'如果数字是1,并且未设置'如果数字不是1。
我的问题:我可以阅读字符串并验证它是否可以编码。但是我无法获得该号码。
我想要什么:我希望程序读取字符串以及相应的数字和基于条件返回语句。记住单词 "编码"并且数字在同一行。 请指导我。
答案 0 :(得分:1)
您应该为{while}条件添加$scope.tasks.push({"text": $scope.newTask});
。 sc.hasNext();
会读取下一个值,在检查您的状况时您会丢失它。我还在sc.next();
上添加了一些关于流关闭操作的建议。
以下代码打印:
finally
“readFrom.txt”包含文字:“Coding 1”
Coding
Coding is set.
答案 1 :(得分:1)
示例代码
while(sc.hasNext()){
try{
String str = sc.nextLine();
String strArray[] = str.split(" ");
if ( strArray.length > 1 && strArray[0].equals("Coding")){
int count = Integer.parseInt(strArray[1]);
// check for count value == 1 or not and do processing
if ( count == 1){
System.out.println("Coding set");
}else{
System.out.println("Coding not set");
}
}else{
System.out.println("Coding not set");
}
}catch(Exception err){
err.printStackTrace();
}
}