从201604.txt文件内读取信息 然后输出加上总费用
13304526231张三:市话费:176.83元,长途费:107.33元,网络费:328.33元
总费用:612.490000元!
13664526211李四:市话费:26.25元,长途费:17.45元,网络费:928.79元
总费用:972.490000元!
13804523122王五:市话费:106.12元,长途费:87.26元,网络费:828.62元
总费用:1022.000000元!
13664526328刘六:市话费:116.80元,长途费:82.91元,网络费:528.61元
总费用:728.320000元!
13304521688周七:市话费:146.39元,长途费:167.28元,网络费:0.00元
总费用:313.670000元!
import java.util.regex.Pattern; 总费用:612.490000元!
13664526211李四:市话费:26.25元,长途费:17.45元,网络费:928.79元
总费用:972.490000元!
13804523122王五:市话费:106.12元,长途费:87.26元,网络费:828.62元
总费用:1022.000000元!
13664526328刘六:市话费:116.80元,长途费:82.91元,网络费:528.61元
总费用:728.320000元!
13304521688周七:市话费:146.39元,长途费:167.28元,网络费:0.00元
总费用:313.670000元!
import java.util.regex.Matcher;
import java.util.Scanner;
import java.io.File;
{
public static void main(String [] args)throws Exception
{
Scanner sc = new Scanner(new File(“201604.txt”));
String str =“”;
Pattern p = Pattern.compile(“\\ d + \\。\\ d +”);
Matcher m = null;
总共= 0;
while(sc.hasNextLine()){
str = sc.nextLine();
的System.out.println(STR);
m = p.matcher(str);
总数= 0.0;
while(m.find())
total = total + Double.parseDouble(m.group());
System.out.printf( “总费用:%2F元\ r \ n”,总计);
}
}
}
从命令行内读入
import java.util.Scanner;import java.util.regex.Pattern;
import java.util.regex.Matcher;
public class ComputerUserSum
{
public static void main(String[] args)
{
Scanner sc = new Scanner(System.in);
String str = "";
while (sc.hasNextLine())
{
str = sc.nextLine();
Pattern p = Pattern.compile("[:元]");
String[] chai = p.split(str);//括号内是待拆分的字符串
double sum = 0.0;
sum += Double.parseDouble(chai[2]);
sum += Double.parseDouble(chai[4]);
sum += Double.parseDouble(chai[6]);
System.out.printf("%s ,总费用:%.2f元!\r\n",str,sum);
//str.replaceAll("^[ \\t]*[0-9]*\\.", "")
}
}
}