Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/351.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何检查文本文件中是否包含某个单词?_Java_File_Text - Fatal编程技术网

Java 如何检查文本文件中是否包含某个单词?

Java 如何检查文本文件中是否包含某个单词?,java,file,text,Java,File,Text,我正在尝试检查这些单词的每一次出现-计算、执行、I/O、产量和输出。我读入一个文件并将数据存储在一个名为process的对象中。所有数据都已正确存储在对象中。方法prep查找这些单词的每一次出现。唯一的问题是所有的问题 除了I/O之外,单词是有效的,第一次出现的单词永远不会出现 代码- public void contentArray(Process x) { for(int i=0; i<x.getListInfo().size(); i++) {

我正在尝试检查这些单词的每一次出现-计算、执行、I/O、产量输出。我读入一个文件并将数据存储在一个名为process的对象中。所有数据都已正确存储在对象中。方法prep查找这些单词的每一次出现。唯一的问题是所有的问题 除了I/O之外,单词是有效的,第一次出现的单词永远不会出现

代码-

 public void contentArray(Process x)
 {
     for(int i=0; i<x.getListInfo().size(); i++)
     {
         System.out.println(x.getindex(i));
     }
 }

 public void prep(Process x)
 {
     System.out.println("******************");
     String xo ="oo";
     while(xo!="EXE")
     {
         for(int i=0; i<x.getListInfo().size(); i++)
         {
             String processor = x.getindex(i);
             if(processor.equals("I/O"))
             {
                 System.out.println("I/O " + i );
                 xo="I/O";
             }
             else if(processor.equals("CALCULATE"))
             {
                 System.out.println("Calculate "+ i);
                 xo="CALCULATE";
             }
             else if(processor.equals("YIELD"))
             {
                 System.out.println("YIELD " + i);
                 xo="YIELD";
             }
             else if (processor.equals("OUT"))
             {
                 System.out.println("Out " + i);
                 xo="OUT";
             }
             else if (processor.equals("EXE"))
             {
                 System.out.println("EXE " + i);
                 xo="EXE";
             }
         }
     }
 }


import java.io.*;
import java.util.*;
public class FileReader {

public static void main(String[] args) throws Exception {
    Scanner in = new Scanner(System.in);
    int fileNum = 0;
    String filename;
    int runtime = 0;
    int memory = 0;
    int counter = 0;
    String name = "";
    int filecounter = 0;
    String x = "";
    ArrayList<Process> allfiles = new ArrayList<Process>();
    System.out.println("How many files do you have");
    x = in.nextLine();
    while (filecounter < Integer.parseInt(x)) // number of files
    {
        System.out.println("enter file name");
        filename = in.nextLine();
        filecounter++;
        File file = new File("C:\\Users\\documents\\git\\" + filename);
        Scanner s = new Scanner(file);
        //Scanner s = new Scanner(new File(filename));
        ArrayList<String> list = new ArrayList<String>();
        while (s.hasNext()) {// takes in all file values
            list.add(s.next());
        }
        for (int i = 0; i < list.size(); i++) {
            if (list.get(i).equals("Name:")) {
                name = list.get(i + 1);
                System.out.println(name);
                //list.remove(i);// removes name
                //list.remove(i+1);// removes file name
            }
            if (list.get(i).equals("runtime:")) {
                runtime = Integer.parseInt(list.get(i + 1));
                System.out.println(runtime);
                //list.remove(i); //removes runtime
                //list.remove(i+1); //removes runtime value
            }
            if (list.get(i).equals("Memory:")) {
                memory = Integer.parseInt(list.get(i + 1));
                System.out.println(memory);
                //list.remove(i);//removes memory
                //list.remove(i+1); //removes memory value
            }
        }
        counter++;//pid starts from 1 and goes up
        Process p = new Process(name, counter, runtime, memory, ProcessState.New, list);
        allfiles.add(p);



        s.close();




    }
    Scheduler schedulerQ = new Scheduler();
    schedulerQ.contentArray(allfiles.get(0));
    schedulerQ.prep(allfiles.get(0));


}
}
public void contentArray(进程x)
{

对于(int i=0;i输入文件在第一次出现时似乎有i/0,而不是i/O。您可以再次检查输入文件吗?

您是否在期望处理器对象为“i/O”时进行了步骤调试并检查了它的实际值?是,并且处理器正在获取I/O,但它不执行if语句。如果有任何帮助,则只会遇到I/O问题