关于java问题-有关java文件操作的问题

问题描述

有关java文件操作的问题

有一个java程序,
就是统计幼儿园小朋友需要的铅笔(一支铅笔2元)的总价
我已经用面向对象的思想实现了这个程序,
程序输出是一行行的
姓名 年纪 需要铅笔的数目 某小朋友总价
最后输出所有的价格
(例如 小明 4 5 10元
小李 5 4 8元
......)

现在需要从文件读取一行行的信息(就是上面的格式),并计算总价,这个该怎么做?

解决方案

你好,,根据你的需求,,我是写了一个实体类,,然后用list遍历输出,,代码如下:
public class User {
private String name;
private int age;
private int pencilNum;
private int totalPrice;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public int getPencilNum() {
return pencilNum;
}
public void setPencilNum(int pencilNum) {
this.pencilNum = pencilNum;
}
public int getTotalPrice() {
return totalPrice;
}
public void setTotalPrice(int totalPrice) {
this.totalPrice = totalPrice;
}

public String toString(){

    return name + " " + age + " " +pencilNum + " " +totalPrice+"元";
}

}

public class TestPencil {
public static void main(String[] args) {
List users=new ArrayList();
String info="";
String name="";
int age=0;
int pencilNum=0;
int totalPrice=0;
Scanner in=new Scanner(System.in);
while(in.hasNextLine()){
User u=new User();
info=in.nextLine();
if(info.equals("退出")){
in.close();
break;
}

        String message[]=info.split(" ");
        name=message[0];
         age=Integer.parseInt(message[1]);
         pencilNum=Integer.parseInt(message[2]);
         totalPrice=pencilNum*2;
         u.setName(name);
         u.setAge(age);
         u.setPencilNum(pencilNum);
         u.setTotalPrice(totalPrice);
         users.add(u);
    }
    in.close();

    for(User u:users){
    System.out.println(u);
    }

}

}

最后输入退出的时候就可以看到结果了

解决方案二:

1。java测试文件结尾
import java.io.BufferedInputStream;
import java.io.DataInputStream;
import java.io.FileInputStream;
import java.io.IOException;

public class MainClass {
public static void main(String[] args) throws IOException {
DataInputSt......
答案就在这里:java文件操作的一些问题

解决方案三:

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

public class GetTotal {

/**
 * @param path :文件的路径
 * @param price :单价
 * @return :返回总价格
 */
public static int inputFile(String path,int price){
    File file = new File(path);
    int num = 0;
    try {
        BufferedReader  br = new BufferedReader(new InputStreamReader(new FileInputStream(file),"GBK"));
        String line = null;
        while((line=br.readLine()) != null){
            System.out.println(line);
            String[] s = line.split("s+");
            if(s.length > 2){
             num += Integer.parseInt(s[2]);
            }else{
                System.out.println("这行信息有格式错误:"+line);
            }

        }

    } catch (FileNotFoundException e) {
        e.printStackTrace();
    } catch (NumberFormatException e) {
        e.printStackTrace();
    } catch (IOException e) {
        e.printStackTrace();
    }
    return num*2;
}

public static void main(String[] args) {
    GetTotal gt = new GetTotal();
    System.out.println(gt.inputFile("d:test.txt",2));
}

}

时间: 2016-05-11

关于java问题-有关java文件操作的问题的相关文章

使用技巧:对Java编程中的文件操作详解

编程|技巧|详解 一.获得控制台用户输入的信息 /** *//**获得控制台用户输入的信息 * @return * @throws IOException */ public String getInputMessage() throws IOException...{ System.out.println("请输入您的命令∶"); byte buffer[]=new byte[1024]; int count=System.in.read(buffer); char[] ch=new

用java写的一个文件操作类包

前几天仔细看了看java的I/O操作,呵呵.就写了一个操作文件的类包,功能有创建文件或目录,删除文件或目录,复制文件或目录,移动文件或目录,设置文件或目录属性,查看文件或目录大小.呵呵,功能比较简单,源代码为: 创建: Java代码 package fileOperation; import java.io.File; import java.io.FileOutputStream; /** * @author wakin * */ public class Create { /**根据字符串生

Java输入输出流和文件操作

操作系统中的文件和目录概念 文件与文件系统 文件是信息的一种组织形式,是存储在外部存储介质上的具有标志名的一组相关信息集合. 文件系统用文件概念来组织和管理存放在各种介质上的信息.文件系统提供目录机制实现文件的"按名存取". 目录结构与文件检索 目录是文件系统组织和管理文件的基本单位,目录中保存它所管理的每个文件的基本属性信息(成为文件目录项或文件控制块).除了文件外,目录中还可以包含子目录和文件,子目录中还可以再有子目录和文件,由此构成目录的多级树状结构.文件是这种树状结构的叶子节点

Java的文件操作--2(Zip文件释放)

  在java中专门有一个对zip文件操作的包(java.util.zip),对zip文件操作挺方便的,上次说写一个zip文件释放程序,花了一天时间终于写完了,起先想起来挺简单的:原理就是将zip文件中的文件夹和文件通过ZipInputStream和ZipEntry类一一得出,然后分别再对应目录下创建文件和文件夹.可是实现起来就不是那么回事了,其中有好多细节问题都不好解决,其中在调用ZipInputStream中的getNextEntry方法时如果zip文件中包含中文路径名或者文件名就会抛出异常

Java 编程技术中汉字问题的分析及解决,文件操作

编程|汉字|解决|问题 在基于 Java 语言的编程中,我们经常碰到汉字的处理及显示的问题.一大堆看不懂的 乱码肯定不是我们愿意看到的显示效果,怎样才能够让那些汉字正确显示呢?Java 语言 默认的编码方式是UNICODE ,而我们中国人通常使用的文件和数据库都是基于 GB2312 或者 BIG5 等方式编码的,怎样才能够恰当地选择汉字编码方式并正确地处理汉字的编 码呢?本文将从汉字编码的常识入手,结合 Java 编程实例,分析以上两个问题并提出 解决它们的方案. 现在 Java 编程语言已经广

java文件操作大全

java文件操作大全 文件的建立/检查与删除<%@ page contentType="text/html;charset=gb2312"%><%@ page import="java.io.*"%><html><head><title>文件的建立.检查与删除</title></head><body><%String path=request.getRealPath

Java编程那些事儿86——文件操作之File类使用

11.3 I/O类使用 由于在IO操作中,需要使用的数据源有很多,作为一个IO技术的初学者,从读写文件开始学习IO技术是一个比较好的选择.因为文件是一种常见的数据源,而且读写文件也是程序员进行IO编程的一个基本能力.本章IO类的使用就从读写文件开始. 11.3.1 文件操作 文件(File)是最常见的数据源之一,在程序中经常需要将数据存储到文件中,例如图片文件.声音文件等数据文件,也经常需要根据需要从指定的文件中进行数据的读取.当然,在实际使用时,文件都包含一个的格式,这个格式需要程序员根据需要

Web项目: Java在部署项目的WebRoot下建立文件夹(附上文件操作类)

public boolean doTest(){ String path="../webapps/FileTest/reportFiles/aa.jsp";//FileTest为自己的项目名 reportFiles为自己建立的文件夹 aa.jsp为自己建立的文件 boolean isDone = false; File file = new File(path); if(file.exists()) throw new RuntimeException("File: &quo

java调用本地shell文件,操作linux

问题描述 java调用本地shell文件,操作linux 怎么用java程序调用本地的shell文件去操作linux中的文件. 解决方案 Process process = Runtime.getRuntime().exec( ".//p.exe "); 解决方案二: Process process = Runtime.getRuntime().exec( " ");

二进制-新手请教java文件操作的一个小问题~十分感谢

问题描述 新手请教java文件操作的一个小问题~十分感谢 这个类的功能是将任意一个二进制文件中的0压缩成0的数目+0的形式 即:将二进制文件中16进制显示的00压缩成 "0的数目+00的形式" 如00 00 00 1A 压缩成03 00 1A 待压缩文件16进制内容: 代码执行后后生成的文件却成了如图所示的情况 求教什么地方出错了,万分感谢. import java.io.*; public class FileCompression { public static void main