У меня есть три метода в программе can, создайте файл и введите в него строку и после этого преобразуйте каждый символ в файл в верхний регистр, как я могу рассчитать количество повторений каждого символа в строка в файле, например: A = 2 C = 1 S = 4Вычислить количество повторений каждого char
import java.io.BufferedWriter;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.OutputStreamWriter;
import java.io.Writer;
import javax.swing.*;
public class run {
public static void main(String[] args) {
// TODO Auto-generated method stub
create();
write();
read();
}
//----------------------------------------------------------
public static char []a={'S','A','R','D','E','O','P'};
static void create()
{
File file=new File("E://ss.txt");
try
{
if(file.createNewFile())
System.out .print("file is new" +" \n");
else
System.out .print("file is exit"+" \n");
}
catch(IOException e)
{
e.printStackTrace();
}
}
static void write()
{
try
{
FileOutputStream fos = new FileOutputStream("ss.txt") ;
String s=JOptionPane.showInputDialog(null,"write to file");
OutputStreamWriter osw=new OutputStreamWrite`enter code here`r(fos);
Writer r=new BufferedWriter(osw);
r.write(s);
r.close();
}
catch(IOException e)
{
e.printStackTrace();
}
}
static void read()
{
try
{
String c="";
FileInputStream fos = new FileInputStream("ss.txt") ;
System.out.print(fos.available());
int content;
while((content=fos.read())!=-1)
{
c=c+(Character.toString((char)content));
}
System.out.println(c.toUpperCase());
//must be calculate the repeated char
int counter = 0;
for(int i=0; i<c.length(); i++) {
if(c.charAt(i) == a[i]) {
counter++;
}
}
}
catch (Exception e)
{
e.printStackTrace();
}
}
}
Как этот код относится к вашему вопросу? –
http://stackoverflow.com/search?q=[java]+char+occurences – Tom