1. 1.
  2.  
  3. package com.io.Stream;
  4. import java.io.*;
  5. public class NyFileInputStream1 {
  6.  
  7. /**
  8. * 读取文件的streamIO
  9. *
  10. * @param args
  11. */
  12. public static void main(String[] args) {
  13. // TODO Auto-generated method stub
  14. new NyFileInputStream1();
  15. }
  16. public NyFileInputStream1(){
  17. InputStream fis=null;
  18. FileOutputStream fos=null;
  19. try {
  20. fis=new FileInputStream(new File("D:\\Zh.java"));
  21. //fis=new ByteArrayInputStream("wo hao 周海".getBytes());
  22. fos=new FileOutputStream(new File("D:\\Zhouhai.txt"),true);
  23. int len=0;
  24. byte bytes[]=new byte[1024];
  25. while( (len=fis.read(bytes))!=-1){
  26. fos.write(bytes,0,len);
  27. System.out.println(len);
  28. }
  29. } catch (Exception e) {
  30. // TODO Auto-generated catch block
  31. e.printStackTrace();
  32. }finally{
  33. try {
  34. fos.close();
  35. fis.close();
  36. } catch (IOException e) {
  37. // TODO Auto-generated catch block
  38. e.printStackTrace();
  39. }
  40. }
  41. }
  42.  
  43. }
  44.  
  45. 2.
  46.  
  47. package com.io.Stream;
  48.  
  49. import java.io.IOException;
  50. import java.io.PipedInputStream;
  51. import java.io.PipedOutputStream;
  52. /**向管道输出流 写数据的线程
  53. * @param args
  54. */
  55. public class PipedSender extends Thread{
  56.  
  57. private PipedOutputStream out=new PipedOutputStream();
  58. public PipedOutputStream getPipedOutputStream()
  59. {
  60. return out;
  61. }
  62.  
  63. public void run(){
  64. try {
  65. for(int i=-127;i<=128;i++){
  66. out.write(i);
  67. this.yield();
  68. }
  69. } catch (Exception e) {
  70. // TODO: handle exception
  71. }finally{
  72. try {
  73. out.close();
  74. } catch (IOException e) {
  75. // TODO Auto-generated catch block
  76. e.printStackTrace();
  77. }
  78. }
  79. }
  80.  
  81. public static void main(String[] args) {
  82. // TODO Auto-generated method stub
  83. PipedSender pipedSender=new PipedSender();
  84. PipedReceiver pipedReceiver=new PipedReceiver(pipedSender);
  85. pipedSender.start();
  86. pipedReceiver.start();
  87. }
  88. }
  89.  
  90. //从管道输入流 读取数据的线程
  91.  
  92. class PipedReceiver extends Thread{
  93. private PipedInputStream in;
  94. public PipedReceiver(PipedSender pipedSender){
  95. try {
  96. in=new PipedInputStream(pipedSender.getPipedOutputStream());
  97. } catch (IOException e) {
  98. // TODO Auto-generated catch block
  99. e.printStackTrace();
  100. }
  101. }
  102.  
  103. public void run(){
  104. try{
  105. int data;
  106. while((data=in.read()) != -1){
  107. System.out.println(data);
  108. }
  109. in.close();
  110. }catch (Exception e) {
  111. // TODO: handle exception
  112. e.printStackTrace();
  113. }
  114. }
  115. }
  116.  
  117. 3.
  118.  
  119. package com.io.Stream;
  120.  
  121. import java.io.ByteArrayInputStream;
  122. import java.io.FileInputStream;
  123. import java.io.FileNotFoundException;
  124. import java.io.FileOutputStream;
  125.  
  126. public class Stream {
  127.  
  128. /**
  129. * 怎么向文件中写Strting 又读成String
  130. * @param args
  131. */
  132. public static void main(String[] args) {
  133. // TODO Auto-generated method stub
  134. new Stream();
  135. }
  136.  
  137. public Stream(){
  138. try {
  139. FileOutputStream out=new FileOutputStream("D:/Stream.txt",true);
  140. //读取我要的String
  141. ByteArrayInputStream in=new ByteArrayInputStream("zhou hai周省劲".getBytes());
  142. int len=in.available(); //获取所有的字节数目
  143. byte[] bytes=new byte[len];
  144. in.read(bytes); //把输入流的写bytes数组中
  145.  
  146. out.write(bytes, 0, len);
  147. out.close();
  148. in.close();
  149.  
  150. FileInputStream fis=new FileInputStream("D:/Stream.txt");
  151. int len2=fis.available();
  152. byte byin[]=new byte[len2];
  153. fis.read(byin);
  154. System.out.println(new String(byin));
  155.  
  156. fis.close();
  157. } catch (Exception e) {
  158. // TODO Auto-generated catch block
  159. e.printStackTrace();
  160. }
  161. }
  162.  
  163. }
  164.  
  165. 4.
  166.  
  167. package com.io.Stream;
  168. import java.io.*;
  169. public class ByteArrayOutputStreamTester {
  170.  
  171. /**
  172. * byteArrayOutputStream的运用 //字节数据输出流
  173. * @param args
  174. */
  175. public static void main(String[] args) {
  176. // TODO Auto-generated method stub
  177. ByteArrayOutputStream out=new ByteArrayOutputStream();
  178. try {
  179. out.write("周海".getBytes("utf-8")); //用uft-8的编码方式写到数组中
  180.  
  181. byte[] buff=out.toByteArray(); //获取字节数组
  182. out.close();
  183.  
  184. ByteArrayInputStream in=new ByteArrayInputStream(buff);
  185. int len=in.available();
  186. byte[] buffin=new byte[len];
  187. in.read(buffin); //把 buff字节数组的数据读入到 buffiin中
  188. in.close();
  189. System.out.println(new String(buffin,"utf-8"));
  190.  
  191. } catch (IOException e) {
  192. // TODO Auto-generated catch block
  193. e.printStackTrace();
  194. }
  195.  
  196. }
  197.  
  198. }
  199.  
  200. 5.
  201.  
  202. package com.io.Stream;
  203.  
  204. import java.io.BufferedInputStream;
  205. import java.io.BufferedOutputStream;
  206. import java.io.DataInputStream;
  207. import java.io.DataOutputStream;
  208. import java.io.FileInputStream;
  209. import java.io.FileNotFoundException;
  210. import java.io.FileOutputStream;
  211. import java.io.InputStream;
  212.  
  213. public class FormatDateIO {
  214.  
  215. /**
  216. * 可以读取基本的数据类型的IO
  217. * @param args
  218. */
  219. public static void main(String[] args) {
  220. // TODO Auto-generated method stub
  221. try {
  222. FileOutputStream out1=new FileOutputStream("D:/Zhou.txt");
  223. BufferedOutputStream out2=new BufferedOutputStream(out1);
  224. DataOutputStream out=new DataOutputStream(out2);
  225.  
  226. out.writeByte(-12);
  227. out.writeLong(12);
  228. out.writeChar('1');
  229. out.writeUTF("周");
  230.  
  231. out.close();
  232.  
  233. InputStream in1=new FileInputStream("D:/Zhou.txt");
  234. BufferedInputStream in2=new BufferedInputStream(in1);
  235. DataInputStream in=new DataInputStream(in2);
  236. System.out.println(in.read() +" "+in.readLong()+" "+in.readChar()+" " +in.readUTF());
  237.  
  238. in.close();
  239. } catch (Exception e) {
  240. // TODO Auto-generated catch block
  241. e.printStackTrace();
  242. }
  243.  
  244. }
  245.  
  246. }

java.io.stream的更多相关文章

  1. java io读书笔记(2)什么是stream

    什么是stream?stream就是一个长度不确定的有序字节序列. Input streams move bytes of data into a Java program from some gen ...

  2. java.io.IOException: Stream closed

    今天在做SSH项目的时候,出现了这个错误.百思不得其解,网上的答案都不能解决我的问题-.. 后来,一气之下就重新写,写了之后发现在JSP遍历集合的时候出错了. <s:iterator value ...

  3. Java笔记:Java 流(Stream)、文件(File)和IO

    更新时间:2018-1-7 12:27:21 更多请查看在线文集:http://android.52fhy.com/java/index.html java.io 包几乎包含了所有操作输入.输出需要的 ...

  4. java.io.IOException: Attempted read from closed stream

    前言: 代码如下,执行的时候提示"java.io.IOException: Attempted read from closed stream." public static JS ...

  5. Java - 17 Java 流(Stream)、文件(File)和IO

    Java 流(Stream).文件(File)和IO Java.io包几乎包含了所有操作输入.输出需要的类.所有这些流类代表了输入源和输出目标. Java.io包中的流支持很多种格式,比如:基本类型. ...

  6. java.io.IOException: Stream closed解决办法

    1.出现这个bug的大体逻辑代码如下: private static void findMovieId() throws Exception { File resultFile = new File( ...

  7. java.io.StreamCorruptedException: invalid stream header: EFBFBDEF 问题解决

    错误方式 @Test public void testDeserializeTest() throws IOException, ClassNotFoundException { ByteArrayO ...

  8. java.io.IOException: Attempted read from closed stream解决

    在HttpClient请求的时候,返回结果解析时出现java.io.IOException: Attempted read from closed stream. 异常,解决 原因是EntityUti ...

  9. 【Java】IO Stream详细解读

    成鹏致远 | 2013年12月31日 什么是IO Java中I/O操作主要是指使用Java进行输入,输出操作. Java所有的I/O机制都是基于数据流进行输入输出,这些数据流表示了字符或者字节数据的流 ...

随机推荐

  1. [转]Google Cloud Messaging: Overview

    本文转自:https://developers.google.com/cloud-messaging/gcm

  2. Oracle索引(B*tree和Bitmap)学习

    在Oracle中,索引基本分为以下几种:B*Tree索引,反向索引,降序索引,位图索引,函数索引,interMedia全文索引等,其中最常用的是B*Tree索引和Bitmap索引. (1).与索引相关 ...

  3. "德意志之歌"的历史

    1841年8月, 词作家奥古斯特在当时属于英国的黑尔格兰岛上度假时, 创作了"德意志之歌"的歌词.9月, 这首歌首次出版发行, 曲调则借用了海顿的一首君主颂歌 - "皇帝 ...

  4. NGUI:HUD Text(头顶伤害漂浮文字)

    HUD Text 很早之前就有闻于NGUI中的HUD Text插件,今天得以尝试,看了会儿官方的文档,楞是没给看明白,官方的ReadMe.txt写的使用方法如下: 官网Usage 1. Attach ...

  5. cygwin下的vim 的vimrc配置

    1.一直接照 vim 在linux的配置使用 cygwin下的 vi. vim --version 之后,出现了帮助...

  6. <global-results>怎么用

    <global-results>中的result可以被所有action跳转,所有action都可以跳转到result 所有返回值为“json”的action,都可以跳转到json.jsp

  7. 4201 TortoiseSVN常用配置

    在Windows下推荐使用乌龟(Tortoise)SVN客户端. TortoiseSVN 是 Subversion 版本控制系统的一个免费开源客户端,可以超越时间的管理文件和目录.文件保存在中央版本库 ...

  8. IIS mime类型

    参考网站:http://www.iwms.net/n1381c2.aspx 以下例子为iis6.0 下载安卓.苹果安装包时候,需要添加mime类型才可以下载,否则访问不到 安卓 .apk  appli ...

  9. onmeasure

    UNSPECIFIE : 0 [0x0],未加规定的,表示没有给子view添加任何规定. EXACTLY : 1073741824 [0x40000000],精确的,表示父view为子view确定精确 ...

  10. 【C#】【Thread】Monitor和Lock

    所谓锁,就是之锁定的区域只能单个线程进入进行操作,其他线程在锁的外围等待.Monitor锁通过Monitor.Enter(obj)和Monitor.Exit(obj)来锁定和解锁.Lock锁则直接Lo ...