java 输入输出流 关于InputStream 和 OutputSteam 实现文本一行一行读入和 文本一行一行输出
对 byte 有了新的认知;byte表示一个字节 因此他可以表示成 一个 数字; 一个数字可以映射成一个字符;InputStream 中的 read() 函数 的意思是读入一个整数,读入一个整数的意思就是读入一个字节;而 read( byte b[] ) 是读入整个文档内容,可以这么认为 read是把 文本里面的所有数字读进去了;所以只要控制好 read() 函数就可以实现 一行一行读入了; 为什么write()函数写到文档里面不是数字 而是字符呢! 用 System.out.pirntln() 函数打印出来发现确实数字; 其实数字就是字符 字符就是数字,可以把那一堆字符看成数字;
import java.io.File;
import java.io.FileOutputStream;
import java.io.FileInputStream;
import java.io.OutputStream;
import java.io.InputStream;
import java.util.Random; //import java.io.StringBufferInputStream; public class Number1 {
public static void main( String arg[] )throws Exception {
Random rad = new Random();
File file = new File("D:"+File.separator+"tt.txt");
file.createNewFile();
OutputStream out = new FileOutputStream(file);
for( int i = 100; i >= 0; i-- )
{
int n = rad.nextInt(4)+1; StringBuffer str = new StringBuffer();
for( int j = 0; j < n; j++ )str.append((char)(rad.nextInt(26) + 'a'));
str.append("\r\n");
out.write(str.toString().getBytes());
}
File file2 = new File("D:"+File.separator+"xx.txt");
file2.createNewFile();
OutputStream output = new FileOutputStream(file2); InputStream in = new FileInputStream(file);
byte b[] = new byte[100]; int sum = 0;
int len = (int)file.length();
for( int i = 0; i < len; i++ ){
byte temp = (byte)in.read();
if( temp != (byte)'\r' && temp != (byte)'\n' )
b[sum++] = temp;
else{
output.write( new String(b,0,sum).getBytes() ); sum = 0;
if( temp == (byte)'\r') output.write( (byte)'\r' );
else output.write( (byte)'\n');
}
}
in.close();
out.close();
}
}
java 输入输出流 关于InputStream 和 OutputSteam 实现文本一行一行读入和 文本一行一行输出的更多相关文章
- Java输入/输出流体系
在用java的io流读写文件时,总是被它的各种流能得很混乱,有40多个类,理清啦,过一段时间又混乱啦,决定整理一下!以防再忘 Java输入/输出流体系 1.字节流和字符流 字节流:按字节读取.字符流: ...
- 深入理解Java输入输出流
Java.io包的File类,File类用于目录和文件的创建.删除.遍历等操作,但不能用于文件的读写. Java 对文件的写入和读取涉及到流的概念,写入为输出流,读取为输入流.如何理解流的概念呢?可以 ...
- 转 Java输入输出流详解(非常详尽)
转 http://blog.csdn.net/zsw12013/article/details/6534619 通过数据流.序列化和文件系统提供系统输入和输出. Java把这些不同来源和目标的数据都 ...
- Java输入输出流详解
通过数据流.序列化和文件系统提供系统输入和输出. Java把这些不同来源和目标的数据都统一抽象为数据流.Java语言的输入输出功能是十分强大而灵活的,美中不足的是看上去输入输出的代码并不是很简洁,因为 ...
- Java 输入输出流 转载
转载自:http://blog.csdn.net/hguisu/article/details/7418161 1.什么是IO Java中I/O操作主要是指使用Java进行输入,输出操作. Java所 ...
- Java输入输出流(一)——常用的输入输出流
1.流的概念:在Java中,流是从源到目的地的字节的有序序列.Java中有两种基本的流--输入流(InputStream)和输出流(OutputStream). 根据流相对于程序的另一个端点的不同,分 ...
- java 输入输出流1 FileInputStrem&&FileOutStream
通过文件输入流读取问价 package unit6; import java.io.FileInputStream; import java.io.FileNotFoundException; imp ...
- java输入输出流总结 转载
一.基本概念 1.1 什么是IO? IO(Input/Output)是计算机输入/输出的接口.Java中I/O操作主要是指使用Java进行输入,输出操作. Java所有的I/O机制都是 ...
- Java输入输出流(转载)
转自http://blog.csdn.net/hguisu/article/details/7418161 目录(?)[+] 1.什么是IO Java中I/O操作主要是指使用Java进行输入,输出操作 ...
随机推荐
- 第五篇:Spark SQL Catalyst源码分析之Optimizer
/** Spark SQL源码分析系列文章*/ 前几篇文章介绍了Spark SQL的Catalyst的核心运行流程.SqlParser,和Analyzer 以及核心类库TreeNode,本文将详细讲解 ...
- Devops 到底是什么?
Devops 到底是什么? 过去一年以来,一批来自欧美的.不墨守陈规的系统管理员和开发人员一直在谈论一个新概念:DevOps.DevOps就是开发(Development)和运维(Operations ...
- monkey测试小记
本篇中不记录环境搭建,只是介绍一些经验和小秘诀吧. 一.使用安卓模拟器进行测试. 在刚刚接触到monkey测试的时候,用的真机进行测试,点击几万次甚至更多的时候,发现系统变慢了.也许是错觉,但是系统经 ...
- shell 数组【了解一下】
数组编程 #!/bin/bash # array soft=( php mysql nginx ) # 输出第一个 echo ${soft[0]} # 输出所有 echo "This sof ...
- Mac下配置NDK环境
下载NDK 这里写图片描述配置NDK开发环境 第一步:打开Mac终端 Snip20170208_1.png 第二步:在终端中输入:open -e .bash_profile,打开.bash_profi ...
- 最优化问题 Optimization Problems & 动态规划 Dynamic Programming
2018-01-12 22:50:06 一.优化问题 优化问题用数学的角度来分析就是去求一个函数或者说方程的极大值或者极小值,通常这种优化问题是有约束条件的,所以也被称为约束优化问题. 约束优化问题( ...
- 关系型数据库(RDBMS)与 MongoDB 的对应关系
谈一下关系型数据库(RDBMS)与 MongoDB 的对应关系:
- WPF应用的一些小总结(模板、样式,上下文)
1: 后台:XXX.DataContext = ViewModel(数据对象)(XXX可以是当前的UserControl.Windows.Grid.TextBlock.Lable等UI控件,选择不同的 ...
- IDEA运行时Information:java: Errors occurred while compiling module!
在网上找了资源 说看一下项目JDK,字符编码UTF-8,但是都不很实用,突然发现: IDEA的右下角改变字符编码的按钮,先改成GBK然后再改成UTF-8,然后就OK了. 原因:导入开源的项目的时候,你 ...
- 第七天 Linux用户管理、RHEL6.5及RHEL7.2 root密码破解、RHEL6.5安装vmware tools
1.Linux用户管理 Linux系统中,存在三种用户 A.超级用户:root 最高权限,至高无上 在windows中 administrator是可以登录的最高权限,但是,system权限最高,不能 ...