如何用java读取txt中的java文件,并且记录其中char,int,if,while等出现的个数

如题~~,好的话悬赏加!... 如题~~,好的话悬赏加! 展开
 我来答
百度网友881abcb
推荐于2016-10-08 · TA获得超过186个赞
知道小有建树答主
回答量:262
采纳率:100%
帮助的人:124万
展开全部

读取java文件就要用到io了,每一个单词应该会有分隔符,可能是空格,逗号,

import java.io.BufferedReader;
import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;
import java.io.InputStreamReader;

public class FileTest {

    /**
     * @param args
     * @throws IOException
     */
    public static void main(String[] args) throws IOException {
        File file = new File(""/** 文件名 */
        );
        FileInputStream fis = new FileInputStream(file);
        InputStreamReader isr = new InputStreamReader(fis);
        BufferedReader br = new BufferedReader(isr);
        String sb = "";
        int count = 0;
        sb = br.readLine();
        while (sb != null) {
            String[] array = sb.split(" "/** 文件分隔符 */
            );
            for (String string : array) {
                if (string.equals("while")) {
                    count++;
                }
            }
            sb = br.readLine();
        }
        System.out.println(count);
    }
}
更多追问追答
追问
我还有些其它问题能不能QQ联系?
追答
709423445
小童鞋_成er
2014-07-05 · 知道合伙人数码行家
小童鞋_成er
知道合伙人数码行家
采纳数:4650 获赞数:22879
主要从事J2EE工作,热爱Java,用心讨论技术,共同进步。

向TA提问 私信TA
展开全部
import java.io.BufferedReader;
import java.io.File;
import java.io.FileReader;
import java.io.IOException;
import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;
import java.util.Set;
public class FileNumberDemo {
public static void main(String[] args) throws IOException{
File file = new File("D:\\a.txt");
if(!file.exists())
throw new RuntimeException("文件不存在!");
BufferedReader fw = new BufferedReader(new FileReader(file));
String str = null,result = "";
while((str=fw.readLine())!=null){
result+=str;
}
String[] arr = result.split(",");
HashMap<String,Integer> map = new HashMap<String,Integer>();
for(int i = 0; i < arr.length; i++){
Integer value = map.get(arr[i]);
if(value==null)
map.put(arr[i], 1);
else
map.put(arr[i], ++value);
}
Set<Map.Entry<String,Integer>> set = map.entrySet();
for(Iterator<Map.Entry<String,Integer>> it = set.iterator(); it.hasNext();){
Map.Entry<String,Integer> entry = it.next();
String key = entry.getKey();
Integer value = entry.getValue();
System.out.println(key+":"+value);
}
}
}

//文件内容:

char,int

,

float,

char,

int,double


//测试结果:

char:2

int:2

double:1

float:1

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式