文件的输出与载入之java操作
一、前言
学习java没多久,关键是没怎么系统学过。都是看别人的代码来学习的。今天就把一直以来让我头痛的java IO 的一些基本操作来记录下来,加深记忆。
二、java导入文件到内存中
首先放一个完整的加载函数(这里我的返回值是定义的一个稀疏矩阵类)
</pre><p><pre name="code" class="java">public SMatrix Load(String file, String delimeter){
Map<ArrayList<Integer>,Integer> triples = new HashMap<ArrayList<Integer>,Integer>();
try{
File f = new File(file);
FileReader fr = new FileReader(f);
BufferedReader br = new BufferedReader(fr);
String line;
while((line = br.readLine()) != null){
String[] str = line.trim().split(delimeter);
ArrayList<Integer> s = new ArrayList<Integer>();
for(int i = 0;i < str.length - 1; i++){
s.add(Integer.parseInt(str[i]));
}
triples.put(s, Integer.parseInt(str[str.length - 1]));
}
br.close();
fr.close();
}catch(IOException e){
e.printStackTrace();
}
SMatrix sm = new SMatrix(triples);
return sm;
}
解析:所以基本的步骤是:
try{
File f = new File(file);//Step1:利用文件的路径file,创建文件类
FileReader fr = new FileReader(f);//Step2:创建文件读入类
BufferedReader br = new BufferedReader(fr);//Step3:创建读入的缓存类
String line;
while((line = br.readLine()) != null){//循环读入文件的每一行
String[] str = line.trim().split(delimeter);//将每一行按字符串delimeter分割成一个字符串数组
XXXXXXXXX;//TODO:接下来就将得到的字符串数组按照你构造的对象来赋值等等。这里面要注意字符串到整型或Double的转化等。
}
br.close();//关闭缓存读入
fr.close();//关闭文件读入
}catch(IOException e){
e.printStackTrace();
}
三、java将数据从内存输出到硬盘文件中
定义输出文件路径:例如,String of = "D:/data/blablabal.txt";
String outFile = "data/eigenVector.txt";
try{
File f = new File(outFile);//构造输出文件类
FileOutputStream fout = new FileOutputStream(f);//构造一个输出文件流
<span style="font-family: Arial, Helvetica, sans-serif;"><span style="white-space:pre"> </span>fout.write("@RELATION\teigenVector\n".getBytes());//主要函数就是 write(args),里面的参数要求是byte[]型的。</span>
for(int i = n-k;i<n;i++){
fout.write(("@ATTRIBUTE\t"+i + "\tREAL\n").getBytes());
}
fout.write("@DATA\n".getBytes());
if(k <= n){
for(int i = 0;i < m;i++){
for(int j = n-k;j<n;j++){
Double temp = new Double(eigVector.getArray()[i][j]);
String tem = temp.toString();
fout.write((tem + "\t").getBytes());
}
fout.write(("\n").getBytes());
}
}
}
catch(IOException e){
e.printStackTrace();
}
比如你想写一段文字:“I am a student,and I come from China”
fout.write(("I am a student,and I come from China").getBytes());
相应的输出一个table键为:
fout.write(("\t").getBytes());
输出换行:
fout.write(("\n").getBytes());
</pre><pre name="code" class="java">等等。
文件的输出与载入之java操作的更多相关文章
- Redis基础知识、命令以及java操作Redis
1 nosql的概念 sql:操作(关系型)数据库的标准查询语言 关系型数据库(rdbms):以关系(由行和列组成的二维表)模型为核心数据库,有表的储存系统.(mysql.oracle.sqlserv ...
- Java操作属性文件,支持新增或更新多个属性
Java操作属性文件.支持新增或更新多个属性 一.更新或新增单个属性的方法 /** * 写入properties信息 * @param filePath 绝对路径(包含文件名称和后缀名) * @par ...
- java操作office和pdf文件java读取word,excel和pdf文档内容
在平常应用程序中,对office和pdf文档进行读取数据是比较常见的功能,尤其在很多web应用程序中.所以今天我们就简单来看一下Java对word.excel.pdf文件的读取.本篇博客只是讲解简单应 ...
- java操作文件常用的 IO流对象
1.描述:流是字节数据或字符数据序列.Java采用输入流对象和输出流对象来支持程序对数据的输入和输出.输入流对象提供了数据从源点流向程序的管道,程序可以从输入流对象读取数据:输出流对象提供了数据从程序 ...
- java操作Excel、PDF文件
java操作Excel.PDF文件 分享者:Vashon 分享来源:CSDN博客 下面这些是在开发中用到的一些东西,有的代码贴的不是完整的,只是贴出了关于操作EXCEL的代码: jxl是一个*国人写的 ...
- Java操作文件那点事
刚开始学Java时候,一直搞不懂Java里面的io关系,在网上找了很多大多都是给个结构图草草描述也看的不是很懂.而且没有结合到java7 的最新技术,所以自己结合API来整理一下,有错的话请指正,也希 ...
- properties文件简介及其常用Java操作
一.properties文件简介 java中的properties文件是一种配置文件,主要用于表达配置信息,文件类型为*.properties,格式为文本文件,文件的内容是格式是"键=值&q ...
- Java操作文件夹的工具类
Java操作文件夹的工具类 import java.io.File; public class DeleteDirectory { /** * 删除单个文件 * @param fileName 要删除 ...
- java实现将指定文件夹里所有文件路径输出到指定文件作为参数化文件给lr脚本使用
java实现将指定文件夹里所有文件路径输出到指定文件作为参数化文件给lr脚本使用 import java.io.BufferedReader; import java.io.BufferedWrite ...
随机推荐
- 【linux】linux服务管理
ps:xinetd只要求了解
- 十个 MongoDB 使用要点
转自: 十个 MongoDB 使用要点 从 mongodb 阶段性技术总结 中抽取并整理了对大家有帮助的十个要点: 1.mongodb 表名和字段名统一用小写字母 mongodb 是默认区分 ...
- 剑指offer系列20--从上到下打印二叉树
* 20 [题目]从上往下打印出二叉树的每个节点,同层节点从左至右打印. * [思路]从根结点开始,先保存结点,再看根结点的左右结点有没有值. * 有,就将左右值放到集合中: * 根节点输出后,打印根 ...
- android学习笔记41——图形图像处理1
图像图像处理 ImageView:用于显示普通静态图片: AnimationDrawable:用于开发逐帧动画: Animation:用于对普通图片使用补间动画: Bitmap.BitmapFacto ...
- C语言每日一题之No.2
题目:已知三个整型数8,12,6,按公式s=a+b*c计算,并显示结果 思路:定义三个整型变量a,b,c 定义一个变量s用来保存运算结果 输出 程序: #include <stdio.h> ...
- 【转】c#实现文件下载
需求:点击SAVE,去ajax去后台下载文件,完成后出现保存对话框,然后直接下载. 解决方案:下载完成后用JS转到向到另一个页面,在这页面Page_Load里用C#Response对象直接下载. 下载 ...
- [转][色彩 A] – 永远不要使用纯黑
原文地址:http://www.cgjoy.com/forum.php?mod=viewthread&tid=110762&extra=page%3D1%26filter%3Dtype ...
- mysql事件
文章参考自http://blog.163.com/duanpeng3@126/blog/static/8854373520105182123112/在使用这个功能之前必须确保event_schedul ...
- OAF_架构MVC系列1 - MVC的概述(概念)
2015-04-03 Created By BaoXinjian
- DB2 SQL性能调优秘笈
SQL优化技巧 1.去除在谓词列上编写的任何标量函数 2.去除在谓词列上编写的任何数学运算 3.SQL语句的Select部分只写必要的列 4.尽可能不用Distinct 5.尽量将In子查询重写为Ex ...