1)先上代码:

   public  static void main(String[] args)throws IOException{

         double[][] B=new double[1043][21025];
double[][] transformB=new double[21025][1043]; String filename="/home/hadoop/srcData/B.txt";
final LineIterator it = FileUtils.lineIterator(new File(filename), "UTF-8");
try {
int i=-1;
//DecimalFormat df=new DecimalFormat("#.0000");
while (it.hasNext()) {
++i;
final String line = it.nextLine();
String[] ele=line.split("\t");
for(int j=0;j<ele.length;++j){
B[i][j]=Double.valueOf(ele[j]).doubleValue();//String -->double
//B[i][j]=Double.valueOf(df.format(B[i][j]) ).doubleValue();
}
}
} finally {
it.close();
}
//B
for (int i=0;i<B[0].length;++i)
for (int j=0;j<B.length;++j){
transformB[i][j]=B[j][i];
} String fileName2="/home/hadoop/srcData/transB.txt";
BufferedWriter w2=new BufferedWriter(new FileWriter(fileName2));
for (int i=0;i<transformB.length;++i){
for (int j=0;j<transformB[i].length;++j)
{
w2.write(String.valueOf(transformB[i][j])+"\t"); }
if(i!=transformB.length-1)
w2.newLine(); }
w2.close();

2)读文件,其中直接从文件中读取文件的简洁形式如下,每次读取一行,需要使用commons-io的FileUtils。

 import org.apache.commons.io.FileUtils;
import org.apache.commons.io.LineIterator; final LineIterator it = FileUtils.lineIterator(new File(""), "UTF-8");
try {
while (it.hasNext()) {
final String line = it.nextLine();
}
} finally {
it.close();
}

3)写文件:

 import java.io.IOException;
import java.io.FileWriter;
import java.io.BufferedWriter;
String fileName2="/home/hadoop/srcData/transB.txt";
BufferedWriter w2=new BufferedWriter(new FileWriter(fileName2));
for (int i=0;i<transformB.length;++i){
for (int j=0;j<transformB[i].length;++j)
{
w2.write(String.valueOf(transformB[i][j])+"\t"); }
if(i!=transformB.length-1)
w2.newLine();//插入换行符 }
w2.close();

参考:

https://segmentfault.com/q/1010000000359840

http://my.oschina.net/xiangtao/blog/17078

http://glblong.blog.51cto.com/3058613/1312340

java读写文件及保留指定位小数的更多相关文章

  1. [Java]求文件大小并保留两位小数(文件大小是一个长整型数单位是Byte)

    前言 为了获得一堆apk的大小,并与人类友好方式显示.本来是打算用以下方法,到时不能具体到保留两位小数. org.apache.commons.io.FileUtils.byteCountToDisp ...

  2. 如何把Java的double类型变量保留两位小数

    已知 双精度标量 f,  如果想以字符串形式输出,小数点后保留2位,可直接通过C语言的输出格式,System.out.printf("%.2f", f), 达到目的. 如果想要先转 ...

  3. [转载]使用awk进行数字计算,保留指定位小数

    对于在Shell中进行数字的计算,其实方法有很多,但是常用的方法都有其弱点: 1.bc bc应该是最常用的Linux中计算器了,简单方便,支持浮点. [wangdong@centos715-node1 ...

  4. Java的4种保留4位小数的方法(转)

    上网查到的4种方法 其实刚学java……谁知道java里面的这么多方法啊……java里面重要的包本来就不少啊 ……跟我学粤语的小徒弟问我的东东…… 写两种方式……直接在main函数里面写的.还有就是利 ...

  5. java BigDecimal加减乘除 与 保留两位小数

    BigDecimal bignum1 = new BigDecimal("10"); BigDecimal bignum2 = new BigDecimal("5&quo ...

  6. JAVA ——int 类型除法保留两位小数

    @Test public void txfloat() { // TODO 自动生成的方法存根 int a=9; int b=7; DecimalFormat df=new DecimalFormat ...

  7. java使double保留两位小数的多方法 java保留两位小数

    这篇文章主要介绍了java使double类型保留两位小数的方法,大家参考使用吧 复制代码 代码如下: mport java.text.DecimalFormat; DecimalFormat    d ...

  8. java 金额计算,商业计算 double不精确问题 BigDecimal,Double保留两位小数方法

    解决办法================== http://blog.javaxxz.com/?p=763 一提到Java里面的商业计算,我们都知道不能用float和double,因为他们无法 进行精 ...

  9. java保留2位小数及BigDecimal使用

    java保留两位小数的方法 import java.math.BigDecimal; import java.text.DecimalFormat; import java.text.NumberFo ...

随机推荐

  1. Django随笔 01

    Django 视图 不处理用户输入,而仅仅决定要展现哪些数据给用户: Django 模板 仅仅决定如何展现Django视图指定的数据. dd http://blog.csdn.net/pipisorr ...

  2. LOJ 6057 - [HNOI2016]序列 加强版再加强版

    Description 给定一个长度为 \(n\le 3*10^6\) 的序列 \(q\le 10^7\) 次询问每次求区间 \([l,r]\) 的所有子区间的最小值的和 询问随机 Solution ...

  3. [bzoj3524==bzoj2223][Poi2014]Couriers/[Coci 2009]PATULJCI——主席树+权值线段树

    题目大意 给定一个大小为n,每个数的大小均在[1,c]之间的数列,你需要回答m个询问,其中第i个询问形如\((l_i, r_i)\),你需要回答是否存在一个数使得它在区间\([l_i,r_i]\)中出 ...

  4. Educational Codeforces Round 41 A B C D E

    A. Tetris 题意 俄罗斯方块,问能得多少分. 思路 即求最小值 Code #include <bits/stdc++.h> #define F(i, a, b) for (int ...

  5. POJ1458(最长公共子序列)

    Common Subsequence Time Limit: 1000MS   Memory Limit: 10000K Total Submissions: 44223   Accepted: 18 ...

  6. 一步步打造自己的linux命令行计算器

    相信很多人,在工作中会需要使用到计算器.一般的做法是,打开并使用系统自带的计算器. 这种做法可能对我来说,有如下几个问题. 太慢.每次需要打开计算器,然后改成编程模式,手工选择进制,再使用输入表达式进 ...

  7. linux知识复习1-dup dup2

    #include <sys/stat.h> #include <string.h> #include <fcntl.h> #include <stdio.h& ...

  8. 【 学习笔记 】memcached基础知识

    源地址:http://kb.cnblogs.com/page/42731/ 仔细学习了下,以下是记录的笔记备忘内容. 一.memcached是什么?    memcached是高性能的分布式内存缓存服 ...

  9. Selenium2+python自动化32- 测试报告的易读性【转载】

    前言 前一篇已经介绍了报告的生成方法,本篇小编优化一下测试报告,使测试报告便于大多数阅读.虽然在我们在测试用例开发时为每个用例添加了注释,但测试报告一般是给非测试人员阅读的,如果能在报告中为每一个测试 ...

  10. Remove @Override annotation错误提示

    因为对于JDK5.0/1.5版本来说,@Override annotation只能用与对超类的方法重写上, 而不能用在对接口方法的实现方法上. 解决的方法是把JDK改为1.6的或动手把注释@Overr ...