Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/317.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_Integer - Fatal编程技术网

Java 如何在计算机上打印和删除文件中的整数

Java 如何在计算机上打印和删除文件中的整数,java,integer,Java,Integer,我正试图从我的电脑读取一个文件,让系统打印出只包含字母的文件,而不打印数字。我的代码中已经有其他函数了,所以请看一下底部我被arraylist卡住的地方。打印时如何忽略整数 import java.io.BufferedReader; import java.io.FileReader; import java.io.IOException; import java.util.ArrayList; import java.util.Scanner; public class BufferedR

我正试图从我的电脑读取一个文件,让系统打印出只包含字母的文件,而不打印数字。我的代码中已经有其他函数了,所以请看一下底部我被arraylist卡住的地方。打印时如何忽略整数

import java.io.BufferedReader;
import java.io.FileReader;
import java.io.IOException;
import java.util.ArrayList;
import java.util.Scanner;

public class BufferedReaderExample {

public static void main(String[] args) {

    BufferedReader reader = null;
    ArrayList <String> myFileLines = new ArrayList <String>();

    try {

        String sCurrentLine;

        reader = new BufferedReader(new FileReader("/Users/wolftrek/Downloads/example.txt"));

        while ((sCurrentLine = reader.readLine()) != null) {
            myFileLines.add(sCurrentLine);

            System.out.println(sCurrentLine);
        }

    } catch (IOException e) {
        e.printStackTrace();
        System.out.print(e.getMessage());
    } finally {
        try {

            if (reader != null)reader.close();
        } catch (IOException ex) {
            System.out.println(ex.getMessage());
            ex.printStackTrace();
        }
    }



    for (int i = 0; i < myFileLines.size(); i++) {
        if (myFileLines.get(i).contains("example word")) {
            System.out.println(myFileLines.get(i));
        }
    }

    Scanner myScanner = new Scanner (System.in);
    String enteredString = "";

    System.out.println("Please enter the characters to search for: ");
    enteredString = myScanner.nextLine();

    for(int i = 0; i < myFileLines.size(); i++) {
        if (myFileLines.get(i).contains(enteredString)) {
            System.out.println(myFileLines.get(i));
        }
    }

    ArrayList<String> input = myFileLines;
    String extract = input.replaceAll("[^a-zA-Z]+", "");
    System.out.println(extract);


}
}
导入java.io.BufferedReader;
导入java.io.FileReader;
导入java.io.IOException;
导入java.util.ArrayList;
导入java.util.Scanner;
公共类BufferedReaderExample{
公共静态void main(字符串[]args){
BufferedReader reader=null;
ArrayList myFileLines=新的ArrayList();
试一试{
弦电流线;
reader=newbufferedreader(newfilereader(“/Users/wolftrek/Downloads/example.txt”);
而((sCurrentLine=reader.readLine())!=null){
添加(sCurrentLine);
System.out.println(sCurrentLine);
}
}捕获(IOE异常){
e、 printStackTrace();
System.out.print(如getMessage());
}最后{
试一试{
if(reader!=null)reader.close();
}捕获(IOEX异常){
System.out.println(例如getMessage());
例如printStackTrace();
}
}
对于(int i=0;i
错误在于您正在列表上应用replaceAll,并且正则表达式不正确。下面这样的东西就可以了。我不清楚你是不是想要这个

    ArrayList<String> input = myFileLines;
    for (String e : input) {
        String extract = e.replaceAll("\\d+", "");
        System.out.println(extract);
    }
ArrayList输入=myFileLines;
for(字符串e:输入){
字符串提取=e.replaceAll(“\\d+”,“”);
系统输出打印项次(摘录);
}
replaceAll(“[^a-zA-Z]+”,”)
不起作用?能否在线程“main”java.lang中发布输入和输出异常。错误:未解决的编译问题:类型ArrayList中的方法replaceAll(UnaryOperator)不适用于BufferedReaderExample.main中的参数(字符串,字符串)(BufferedReaderExample.java:60)这是我尝试运行它时收到的错误消息。Eclipse告诉我的错误是“String extract=input.replaceAll”([^a-zA-Z]+,”);是“类型ArrayList中的方法replaceAll(UnaryOperator)不适用于参数(String,String)”
input.replaceAll(s->.replaceAll(”[^a-zA-Z]+“,”);
此外,
输入
不是
myFileLInes
的副本。此外,正则表达式不会忽略整数,正如问题所示,它只保留字母a-Z或a-Z(因此除整数外的其他字符也将被替换)。