Java 从文本文件中计算*的数目

Java 从文本文件中计算*的数目,java,count,character-encoding,Java,Count,Character Encoding,我用这个代码从输入的字符串中计算*的数目。但我需要从文本文件中找到它。有什么想法吗 import java.lang.String; import java.io.*; import java.util.*; public class CountStars { public static void main(String args[]) throws IOException { BufferedReader bf = new BufferedReader(new InputS

我用这个代码从输入的字符串中计算*的数目。但我需要从文本文件中找到它。有什么想法吗

import java.lang.String;
import java.io.*;
import java.util.*;

public class CountStars {

  public static void main(String args[]) throws IOException {
      BufferedReader bf = new BufferedReader(new InputStreamReader(System.in));
      System.out.println("Enter the String:");
      String text = bf.readLine();

      int count = 0;
      for (int i = 0; i < text.length(); i++) {
          char c = text.charAt(i);
          if (c=='*' ) {
              count++;
          }
      }
      System.out.println("The number of stars in the given sentence are " + count);
  }
}
import java.lang.String;
导入java.io.*;
导入java.util.*;
公务舱倒计时星{
公共静态void main(字符串args[])引发IOException{
BufferedReader bf=新的BufferedReader(新的InputStreamReader(System.in));
System.out.println(“输入字符串:”);
String text=bf.readLine();
整数计数=0;
对于(int i=0;i
用下面的行替换BufferedReader行

Path path = Paths.get(aFileName);
BufferedReader bf = Files.newBufferedReader(path, ENCODING)
如果文件名是文件路径,则可以使用args或生成函数

更新1: 谢谢你。 如果版本<7,则使用以下行

BufferedReader bf = new BufferedReader (new FileReader (aFileName));
问候,,
Tamour

在指定文件名时,同时使用
FileInputStream
InputStreamReader
<代码>“UTF-8”是一个相当安全的赌注。然后阅读每一行,并像之前一样计算
'*'
字符数。然后创建一个总计,之后不要忘记关闭文件。

我们可以编写如下简单内容:

            int count= 0;
            FileReader fr = new FileReader("test.txt");
            BufferedReader br = new BufferedReader(fr); 
            String text; 
            while((text= br.readLine()) != null) { 
                   for (int i = 0; i < text.length(); i++) {
                      char c = text.charAt(i);
                      if (c=='*' ) {
                           count++;
                      }
                   }                
                } 

                System.out.println("Count Stars = "+ count);
int count=0;
FileReader fr=新的FileReader(“test.txt”);
BufferedReader br=新的BufferedReader(fr);
字符串文本;
而((text=br.readLine())!=null){
对于(int i=0;i
有什么问题吗?什么不起作用?是什么?您试图解决什么问题?类名是
countvowells
,它计算
*
。很好。您可以找到从文档中读取文件的
BufferedReader
构造函数。。顺便说一句,您应该使用类来读取文件..@KingsIndian-Specs change:)中的输入,代码运行良好。。。我的问题是阅读文本而不是输入字符串。注意:这个答案需要Java 7。我们可以假设这是一个作业Yogendra,请不要发布作业的直接答案。当然。我会小心的。谢谢