Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/sockets/2.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 - Fatal编程技术网

Java 翻译文本文件中的数字

Java 翻译文本文件中的数字,java,Java,我现在正在做一个练习,其中包括获取一个包含数字的文本文件,并在使用异常时将其转换为单词。当我的程序从文本文件中读取诸如“1234”之类的数字时,它会输出“1234:1-2-3-4”,我将创建两个独立的类,一个主类和一个numberTranslator类,主类将包含一个方法TranslateNumberSingle(字符串文件名),该方法将使用扫描标记器和所选文件打开文件名,我的numberTranslator类将包含translate()方法,该方法将字符串转换为单独的整数 我以前从未使用过Sc

我现在正在做一个练习,其中包括获取一个包含数字的文本文件,并在使用异常时将其转换为单词。当我的程序从文本文件中读取诸如“1234”之类的数字时,它会输出“1234:1-2-3-4”,我将创建两个独立的类,一个主类和一个numberTranslator类,主类将包含一个方法TranslateNumberSingle(字符串文件名),该方法将使用扫描标记器和所选文件打开文件名,我的numberTranslator类将包含translate()方法,该方法将字符串转换为单独的整数

我以前从未使用过Scanner标记器,也不熟悉用它打开文件。此外,不确定如何将字符串拆分为单独的数字。非常感谢你的帮助,我现在很迷茫

只需补充:我需要将数字分解为各个数字,将每个数字转换为文本表示,然后将它们与最终的文本字符串组合

这是我的单独课程,谢谢

package hw05;

import java.io.File;
import java.util.Scanner;


public class Main {


 public static void main(String[] args) {


 }
 public translateNumbersInFile(String filename){

 }

}
这是我的数字翻译课, 包装hw05

public class NumberTranslator extends Main {

 public String translate(int number){   


 }

}

从阅读扫描仪和正则表达式开始,我在下面提供了链接

试一试这个问题,当你需要更具体的帮助时再问一次

导入java.io.File;
导入java.io.FileNotFoundException;
导入java.util.Scanner;
公开课考试{
私有静态最终字符串[]stringarray={“零”、“一”、“二”、“三”,
“四”、“五”、“六”、“七”、“八”、“九”};
公共静态void main(字符串[]args){
System.out.println(“请输入您的文件路径:”);
扫描仪=新的扫描仪(System.in);
字符串filepath=scanner.nextLine();
//字符串结果=translateEnumbersInFile(“C:/numText.txt”);
字符串结果=translateEnumbersInFile(文件路径);
系统输出打印项次(结果);
}
公共静态字符串translateNumbersInFile(字符串文件路径){
StringBuffer sb=新的StringBuffer();
文件文件=新文件(文件路径);
试一试{
扫描仪sc=新扫描仪(文件);
while(sc.hasNextLine()){
字符串oneline=sc.nextLine();
对于(int i=0;i<10;i++){
oneline=oneline.replaceAll(i+“”,“”+stringarray[i]
+ " ");
}
sb.追加(一行+“\n”);
}
}catch(filenotfounde异常){
System.out.println(“erro filepath!”);
e、 printStackTrace();
}
使某人返回字符串();
}
}

您看过JavaDoc吗?谷歌搜索的例子?看起来您在问题的代码方面没有做太多的努力。这个问题最好分为多个问题。您可能希望尝试解释为什么要回答。
import java.io.File;
import java.io.FileNotFoundException;
import java.util.Scanner;

public class test {
private static final String[] stringarray = { "zero", "one", "two", "three",
        "four", "five", "six", "seven", "eight", "nine" };

public static void main(String[] args) {
    System.out.println("Please enter your file path:");
    Scanner scanner = new Scanner(System.in);
    String filepath = scanner.nextLine();
    // String result = translateNumbersInFile("C:/numtxt.txt");
    String result = translateNumbersInFile(filepath);
    System.out.println(result);
}

public static String translateNumbersInFile(String filepath) {
    StringBuffer sb = new StringBuffer();
    File file = new File(filepath);
    try {
        Scanner sc = new Scanner(file);
        while (sc.hasNextLine()) {
            String oneline = sc.nextLine();
            for (int i = 0; i < 10; i++) {
                oneline = oneline.replaceAll(i + "", " " +      stringarray[i]
                        + " ");
            }
            sb.append(oneline + "\n");
        }
    } catch (FileNotFoundException e) {
        System.out.println("erro filepath!");
        e.printStackTrace();
    }
    return sb.toString();
}
}