参考了这篇博客并优化,谢谢:http://blog.sina.com.cn/s/blog_99201d890101b4le.html

功能:  实现通过两个类完成先写入文件,再读取数据计算显示

package com.swust;
import java.io.*;
/*
* 数据流包括DataInputStream、DataOutputStream类,
* 两个类的实例化完成流的操作
*/
public class flowTest { public static void main(String[] args)throws IOException {
// TODO Auto-generated method stub
String username = "1";
String path = "C:/test/" + username;
String inforTxt = "msg.db";
String newPath=path+inforTxt;
FileOutputStream fileOut = new FileOutputStream(newPath);
DataOutputStream out = new DataOutputStream(fileOut);
//定义要保存的数据数组
double[] prices={19.90,12.56,18.90,14.99,20.00};//长度5
int[] amount={3,4,5,6,7,8};
String[] descs={"java ee","java se","oracle","sqlserver","android"};
//将prices,amount及descs中的数据以Tab键为分割保存到文件中。
for(int i=0;i<5;i++){
out.writeDouble(prices[i]);
out.writeChar('\t'); out.writeInt(amount[i]);
out.writeChar('\t'); out.writeUTF(descs[i]);
out.writeChar('\t');
}
out.close(); //创建的数据输入流,将上面保存的文件再次打开并读取
FileInputStream fileIn = new FileInputStream(newPath);
DataInputStream in=new DataInputStream(fileIn);
double price;
int amnt;
String desc;
double total=0.0;
for(int i=0;i<5;i++){
price=in.readDouble();
in.readChar();//扔掉tab
amnt=in.readInt();
in.readChar();
desc=in.readUTF();
in.readChar();
System.out.println("你订购了 "+amnt+"件 "+desc+",价格为 "+price);
total=total+amnt*price;
}
System.out.println("共计金额:"+total+"元");
in.close();
} }

运行效果:

你订购了 3件 java ee,价格为 19.9
你订购了 4件 java se,价格为 12.56
你订购了 5件 oracle,价格为 18.9
你订购了 6件 sqlserver,价格为 14.99
你订购了 7件 android,价格为 20.0
共计金额:434.38元

java 文件操作 写入和读取(小结一)的更多相关文章

  1. java 文件的写入和读取

    //写入操作 方法1 OutputStream f = new FileOutputStream("C:/j/j.txt"); f.write("aaaaaaa" ...

  2. java文件的写入和读取(按行)

    https://blog.csdn.net/Alexwym/article/details/81078417 https://blog.csdn.net/nickwong_/article/detai ...

  3. java一行一行写入或读取数据

    原文:http://www.cnblogs.com/linjiqin/archive/2011/03/23/1992250.html 假如E:/phsftp/evdokey目录下有个evdokey_2 ...

  4. Java文件操作源码大全

    Java文件操作源码大全 1.创建文件夹 52.创建文件 53.删除文件 54.删除文件夹 65.删除一个文件下夹所有的文件夹 76.清空文件夹 87.读取文件 88.写入文件 99.写入随机文件 9 ...

  5. Java 文件操作大全

    Java 文件操作大全 //1.创建文件夹 //import java.io.*; File myFolderPath = new File(str1); try { if (!myFolderPat ...

  6. Java笔记--java一行一行写入或读取数据

    转自 Ruthless java一行一行写入或读取数据 链接:http://www.cnblogs.com/linjiqin/archive/2011/03/23/1992250.html 假如E:/ ...

  7. java文件操作(普通文件以及配置文件的读写操作)

    转自:java文件操作(普通文件以及配置文件的读写操作) 读取普通文件 : /** * xiangqiao123欢迎你 如果对代码有疑问可以加qq群咨询:151648295 * * 读取MyFile文 ...

  8. 14、Java文件操作stream、File、IO

    1.文件操作涉及到的基本概念 File File类 是文件操作的主要对象中文意义就是 文件 顾名思意 万物皆文件,在计算上看到的所有东西都是文件保存,不管是你的图片.视频.数据库数据等等都是按照基本的 ...

  9. JAVA文件操作类和文件夹的操作代码示例

    JAVA文件操作类和文件夹的操作代码实例,包括读取文本文件内容, 新建目录,多级目录创建,新建文件,有编码方式的文件创建, 删除文件,删除文件夹,删除指定文件夹下所有文件, 复制单个文件,复制整个文件 ...

随机推荐

  1. FragmentTabHost+FrameLayout实现底部菜单栏

    现在一般的app都使用底部菜单栏,那具体怎么实现的呢!我们就来看看 首先给大家展示一下布局文件 1 <LinearLayout xmlns:android="http://schema ...

  2. FZU 2112 Tickets

    这个问题可以转变一下,先要知道有几个连通块,连通块之间肯定需要添加一条边, 还需要知道每个连通块内部需要添加几条边,这个问题等价于求一张图至少需要几笔画成,这个问题的答案是度为奇数的点的个数/2 #i ...

  3. Spring动态数据源的配置

    Spring动态数据源 我们很多项目中业务都需要涉及到多个数据源,就是对不同的方法或者不同的包使用不同的数据源.最简单的做法就是直接在Java代码里面lookup需要的数据源,但是这种做法耦合性太高, ...

  4. STL中list用法

    本文以List容器为例子,介绍了STL的基本内容,从容器到迭代器,再到普通函数,而且例子丰富,通俗易懂.不失为STL的入门文章,新手不容错过! 0 前言 1 定义一个list 2 使用list的成员函 ...

  5. sed与正则用法收集

    1.将文本每行最后七个字符换成!号 sed   -n  's#.\{7\}$#!#p' ooo 在文本的每一行前添加#符号 sed  's/^.\?/#&/' passwd &  替代 ...

  6. C++风格写判断某年某月某日是一年的第几天

    初学C++,在结构体中写函数及一些C++语言需要的一些格式 看代码 #include<iostream>#include<cstdio>using namespace std; ...

  7. Typescript中的Class

    let btn = document.createElement('button'); btn.textContent = 'Say Hello'; document.body.appendChild ...

  8. 使用滚动条(ActionBar)

    活动条(ActionBar)是Android3.0的重要更新之一.ActionBar位于传统标题栏的位置,也就是显示屏幕的顶部.ActionBar可显示应用的图标和Activity标题——也就是前面应 ...

  9. 扩展BaseAdapter实现不存储列表项的ListView

    下面的实例将会通过扩展BaseAdapter来实现Adapter,扩展BaseAdapter可以取得对Adapter最大的控制权:程序要创建多个列表项,每个列表项的组件都由开发者来决定. 下面的布局文 ...

  10. NSArray和NSSet的区别

    NSSet到底什么类型? 其实它和NSArray功能性质一样,用于存储对象,属于集合: NSSet  , NSMutableSet类声明编程接口对象,无序的集合,在内存中存储方式是不连续的 像NSAr ...