「java文本统计」统计字符java

博主:adminadmin 2022-12-14 19:15:10 63

本篇文章给大家谈谈java文本统计,以及统计字符java对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。

本文目录一览:

请问怎么用Java编程对一个文本文档里的数据进行统计啊,急死人了,哪位大神能帮忙指点一下啊

能把文档内容贴出来或者介绍一下么?

FileInputStream fileInputStream = null;

FileOutputStream fileOutputStream = null;

String[] data = null;

try {

byte[] b = new byte[8*1024];

fileInputStream = new FileInputStream("C:/问题.txt");

int i = 0;

StringBuffer stringBuffer = new StringBuffer();

while ((i = fileInputStream.read(b)) != -1){

stringBuffer.append(b);

}

System.out.println(stringBuffer.toString());

data = stringBuffer.toString().split(",");// 数据

} catch (FileNotFoundException e) {

// TODO Auto-generated catch block

e.printStackTrace();

} catch (IOException e) {

// TODO Auto-generated catch block

e.printStackTrace();

}

finally{

try {

if (fileInputStream != null) {

fileInputStream.close();

}

} catch (IOException e) {

// TODO Auto-generated catch block

e.printStackTrace();

}

}

用java统计文本中相同字符出现的次数

通过循环遍历字符串,然后一个个的比较,记下相同字符的个数就行了。代码如下:

import java.util.Scanner;

import java.util.TreeMap;

/**

 * 从键盘输入16位长整数,编程统计每个数字出现的个数

 * @author young

 *

 */

public class CharMapDemo {

// 统计数字或者字符出现的次数

public static TreeMapCharacter, Integer Pross(String str) {

char[] charArray = str.toCharArray();

TreeMapCharacter, Integer tm = new TreeMapCharacter, Integer();

for (int x = 0; x  charArray.length; x++) {

if (!tm.containsKey(charArray[x])) {

tm.put(charArray[x], 1);

} else {

int count = tm.get(charArray[x]) + 1;

tm.put(charArray[x], count);

}

}

return tm;

}

public static void main(String[] args) {

Scanner sc = new Scanner(System.in);

// System.out.println("请输入一个长整数:");

// int temp = sc.nextInt();

// String str = String.valueOf(temp);

// TreeMapCharacter, Integer tm = Pross(str);

// System.out.println(tm);

System.out.println("请输入一个字符串:");

String str = sc.nextLine();

TreeMapCharacter, Integer tm = Pross(str);

System.out.println(tm);

}

}

java中,给定一个文本,统计其中的单词个数,要求以单词在文本中出现的先后顺序输出

import java.io.BufferedReader;

import java.io.File;

import java.io.FileReader;

import java.io.PrintWriter;

import java.util.LinkedHashMap;

import java.util.Map;

import java.util.regex.Matcher;

import java.util.regex.Pattern;

public class WordCount {

    public static void main(String[] args) throws Exception {

        File file = new File("1.txt");

        PrintWriter pw = new PrintWriter(file);

        pw.println("hello world, hello java.");

        pw.println("hello program, hello java.");

        pw.close();

        printWords(file);

    }

    public static void printWords(File file) throws Exception {

        BufferedReader br = new BufferedReader(new FileReader(file));

        Pattern pattern = Pattern.compile("[A-Za-z]+");

        MapString, Integer map = new LinkedHashMap();

        while (br.ready()) {

            Matcher matcher = pattern.matcher(br.readLine());

            while (matcher.find()) {

                String word = matcher.group();

                if (!map.containsKey(word)) {

                    map.put(word, 0);

                }

                map.put(word, map.get(word) + 1);

            }

        }

        br.close();

        for (String word : map.keySet()) {

            System.out.println(word + " : " + map.get(word));

        }

    }

}

java 如何统计txt文本中的总词数 不是总字数呀 TF–IDF 公式中需要用到

词频(TF)=某个词在文章中出现的次数

词频(TF)=某个词在文章中出现的次数/文章的总词数

或者:

词频(TF)=某个词在文章中出现的次数/该文出现次数最多的词的出现次数

逆文档率:

TF-IDF

TF-IDF=词频(TF)*逆文档率(IDF)

TF-IDF与一个词在文档中的出现次数成正比,与该词在整个语言中的出现次数成反比。

设计一个Java程序,输入一个文件名,打开该文本文件,并统计输出其中26个英文字母出现的次数?

java通过file类获取文件对象,通过输入流按行读取文本内容,然后通过字符串的charAt方法分别统计26个字母的次数,最后输出。

java统计文本文件中的字母、数字、汉字和符号

import java.io.BufferedReader;

import java.io.BufferedWriter;

import java.io.FileNotFoundException;

import java.io.FileReader;

import java.io.FileWriter;

import java.io.IOException;

import java.io.InputStreamReader;

import java.io.PrintWriter;

public class TestForOne {

public static void main(String[] args) {

String s=GetFiles("d:\\111.txt","",1);

WriteFiles(s);

}

public static String GetFiles(String BasePath,String Content, int f) {

/*

* 读写文件操作

*/

String s, s2 = new String();

try {

if (f == 1) {

BufferedReader in = new BufferedReader(new FileReader(BasePath));

while ((s = in.readLine()) != null) {

s2 += s + "\n";

}

in.close();

}

if(f==2)

{

PrintWriter out1=new PrintWriter(new BufferedWriter(new FileWriter(BasePath)));

out1.println(Content);

out1.close();

}

} catch (FileNotFoundException e) {

// TODO Auto-generated catch block

e.printStackTrace();

} catch (IOException e) {

// TODO Auto-generated catch block

e.printStackTrace();

} finally {

return s2;

}

}

public static void WriteFiles(String s)

{

/*

* 对目标内容进行 判断 然后分别写入对应的 文件中

*/

String zimu="",shuzi="",hanzi="",qita="";

for(int i=0;is.length();i++)

{

if( ((s.charAt(i))='A' (s.charAt(i))='Z') || ((s.charAt(i))='a' (s.charAt(i))='z') )

{

zimu+=s.charAt(i);

continue;

}

if(s.charAt(i)='0' s.charAt(i)='9')

{

shuzi+=s.charAt(i);

continue;

}

if(s.charAt(i)=0x0391 s.charAt(i)=0xFFE5)

{

hanzi+=s.charAt(i);

continue;

}

else

{

qita+=s.charAt(i);

continue;

}

}

String content[]={zimu,shuzi,hanzi,qita};

String temp[]={"d:\\zimu.txt","d:\\shuzi.txt","d:\\hanzi.txt","d:\\qita.txt"};

for(int i=0;icontent.length;i++)

{

GetFiles(temp[i],content[i],2);

}

}

}

java文本统计的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于统计字符java、java文本统计的信息别忘了在本站进行查找喔。

The End

发布于:2022-12-14,除非注明,否则均为首码项目网原创文章,转载请注明出处。