向文件输出数据的输出字节流

  1 package com.outputstream;
  2
  3 import java.io.File;
  4 import java.io.FileInputStream;
  5 import java.io.FileNotFoundException;
  6 import java.io.FileOutputStream;
  7 import java.io.IOException;
  8 import java.io.InputStream;
  9 import java.util.Arrays;
 10
 11 /*
 12 输出字节流:
 13
 14 --------| OutputStream 是所有输出字节流 的父类。  抽象类
 15 -----------| FileOutStream 向文件输出数据的输出字节流。
 16
 17 FileOutputStream如何使用呢?
 18     1. 找到目标文件
 19     2. 建立数据的输出通道。
 20     3. 把数据转换成字节数组写出。
 21     4. 关闭资源
 22
 23 FileOutputStream要注意的细节:
 24     1. 使用FileOutputStream 的时候,如果目标文件不存在,那么会自动创建目标文件对象。
 25     2. 使用FileOutputStream写数据的时候,如果目标文件已经存在,那么会先清空目标文件中的数据,然后再写入数据。
 26     3.使用FileOutputStream写数据的时候, 如果目标文件已经存在,需要在原来数据基础上追加数据的时候应该使用new FileOutputStream(file,true)构造函数,第二参数为true。
 27     4.使用FileOutputStream的write方法写数据的时候,虽然接收的是一个int类型的数据,但是真正写出的只是一个字节的数据,只是
 28     把低八位的二进制数据写出,其他二十四位数据全部丢弃。
 29      00000000-000000000-00000001-11111111   511
 30      11111111---> -1
 31 */
 32 //使用字节数组把数据写出。
 33 /*class Write{
 34     public static void writeTest() throws IOException{
 35         //找到目标文件
 36         File file = new File("D://aa.txt");
 37         //创建目标文件
 38         file.createNewFile();
 39         //建立数据通道
 40         FileOutputStream inputStream= new FileOutputStream(file,true);
 41         String str = "\r\n你好,你在干嘛";//如果想存入数据进行换行的话加一个"\n\r"既可以
 42         //把字符串转换为字符数组
 43         inputStream.write(str.getBytes());
 44         inputStream.close();
 45
 46     }
 47 }
 48
 49 public class Demo1 {
 50
 51     public static void main(String[] args) throws IOException {
 52         // TODO Auto-generated method stub
 53
 54         Write write = new Write();
 55         write.writeTest();
 56     }
 57
 58 }
 59 */
 60
 61
 62 /*4.使用FileOutputStream的write方法写数据的时候,虽然接收的是一个int类型的数据,但是真正写出的只是一个字节的数据,只是
 63 把低八位的二进制数据写出,其他二十四位数据全部丢弃。
 64  00000000-000000000-00000001-11111111   511
 65 */
 66
 67
 68 //  写入的一各方法
 69 class Write{
 70     public static void writeTest(){
 71
 72         File  file = new  File("D://bb.txt");
 73         FileOutputStream fileOutputStream = null;
 74         try {
 75              fileOutputStream = new FileOutputStream(file);
 76             fileOutputStream.write(511);
 77         } catch (FileNotFoundException e) {
 78             e.printStackTrace();
 79         }catch (IOException e){
 80             e.printStackTrace();
 81         }finally{
 82             if(fileOutputStream != null){
 83                 try {
 84                     fileOutputStream.close();
 85                 } catch (IOException e) {
 86                     e.printStackTrace();
 87                 }
 88             }
 89         }
 90
 91     }
 92 }
 93 //  读取数据的一个方法
 94 class Read extends Write{
 95     public static void readTest(){
 96         Write write = new Write();
 97         write.writeTest();
 98         File  file = new  File("D://bb.txt");
 99         InputStream inputStream = null;
100         try {
101             inputStream = new FileInputStream(file);
102             byte[] bs = new byte[4];
103             int length = inputStream.read(bs);
104             System.out.println("内容是,"+Arrays.toString(bs));
105
106         } catch (FileNotFoundException e) {
107             e.printStackTrace();
108         } catch (IOException e){
109             e.printStackTrace();
110         }finally{
111             if(inputStream != null){
112                 try {
113                     inputStream.close();
114                 } catch (IOException e) {
115                     // TODO Auto-generated catch block
116                     e.printStackTrace();
117                 }
118             }
119         }
120
121     }
122 }
123 public class Demo1 {
124
125     public static void main(String[] args) throws IOException {
126
127         Read read = new Read();
128         read.readTest();
129     }
130 }
时间: 2024-09-29 20:03:17

向文件输出数据的输出字节流的相关文章

打印流-使用PrintStream输出数据,输出文本

在java.io包中提供有两个打印流的处理类:PrintStream(字节打印流).PrintWriter(字符打印流). 首先来观察PrintStream类的继承结构与构造方法:.public class PrintStream extends FilterOutputStream implements Appendable, Closeable.public PrintStream(OutputStream out),需要通过外部设置输出位置 1 package cn.demo; 2 3 i

你好,C++(5)如何输出数据到屏幕、从屏幕输入数据与读写文件?

2.2  基本输入/输出流 听过HelloWorld.exe的自我介绍之后,大家已经知道了一个C++程序的任务就是描述数据和处理数据.这两大任务的对象都是数据,可现在的问题是,数据不可能无中生有地产生,C++程序也不可能凭空创造出来数据.那么,C++程序中的数据又从何而来呢? 在现实世界中,国与国之间的交流是通过外交官来完成的.在C++世界中,也有负责应用程序跟外界进行数据交流的外交官,它们的名字就是基本输入/输出流对象(iostream).一个C++程序在工作的时候,负责输入的外交官(istr

(转载)你好,C++(5)如何输出数据到屏幕、从屏幕输入数据与读写文件?

你好,C++(5)如何输出数据到屏幕.从屏幕输入数据与读写文件? 2.2  基本输入/输出流 听过HelloWorld.exe的自我介绍之后,大家已经知道了一个C++程序的任务就是描述数据和处理数据.这两大任务的对象都是数据,可现在的问题是,数据不可能无中生有地产生,C++程序也不可能凭空创造出来数据.那么,C++程序中的数据又从何而来呢? 在现实世界中,国与国之间的交流是通过外交官来完成的.在C++世界中,也有负责应用程序跟外界进行数据交流的外交官,它们的名字就是基本输入/输出流对象(iost

使用python获取webservice数据并输出到文件

上头要求设置TCP备案检查,给了个WEBSERVICE接口.查了2天,才确认还是python比较好用,我这水平也就写个脚本把数据导出,过滤检索还是用的shell.写此文备忘.WEBSERVICE接口脚本如下: #! /usr/bin/python #coding:utf-8 import codecs import suds def main(file_name, out_file): url = 'http://121.14.4.210:8088/icpautobj/ws/getIcp?wsd

Response_输出数据,实现文件下载,定时刷新页面,是否缓存,重定向,实现验证码

1.Response_输出数据 1.Web服务器收到客户端的http请求,会针对每一次请求,分别创建一个用于代表请求的request对象.和代表响应的response对象. ServletResponse -- 通用的response提供了一个响应应该具有最基本的属性和方法|-HttpServletResponse -- 在ServletResponse的基础上针对于HTTP协议增加了很多强化的属性和方法 2.HttpServletResponse对象封装了向客户端发送响应状态码.响应头.实体数

hadoop编程小技巧(7)---自己定义输出文件格式以及输出到不同文件夹

代码測试环境:Hadoop2.4 应用场景:当须要定制输出数据格式时能够採用此技巧,包含定制输出数据的展现形式.输出路径.输出文件名称称等. Hadoop内置的输出文件格式有: 1)FileOutputFormat<K,V>  经常使用的父类. 2)TextOutputFormat<K,V> 默认输出字符串输出格式. 3)SequenceFileOutputFormat<K,V> 序列化文件输出: 4)MultipleOutputs<K,V> 能够把输出数据

C++:文件的输入和输出

1.共同的打开文件方式: fin.open("test.txt",ios::binary) fout.open("test.txt",ios::binary) fboth.open("test.txt",ios::in|ios::out|ios::binary) 或者 fistream fin("test.txt",ios::binary) fostream fout("test.txt",ios::bin

文件的输入和输出

文件的输入和输出 1.程序写入文件 ,应遵循以下规则(1)创建一个ofstream对象来管理输出流(2)将对象和输出流关联起来(3)以使用cout的方式来使用该对象.例如: ofstream fout ; //创建对象 fout.open(“jar.txt”) ; //关联文件 注意: Ofstream fout (“jar.txt”) ;//跟上面的两条语句是等效的那么关于第三点:使用cout的方式来使用该对象,比如: fout << “ I love you !”; 原因:fout对象的类

PHP逐行输出数据并解决两种常见缓冲问题

博主热衷各种互联网技术,常啰嗦,时常伴有强迫症,常更新,觉得文章对你有帮助的可以关注我. 转载请注明"深蓝的镰刀" 1.遇到问题 不知你们有没有碰到过这样两种情况: 老板要你将数据库中所有的数据在浏览器中展示出来,因为需要对比数据,老板要求是不能使用分页,那么好了,输出个1000条数据直接循环打印出来没问题,但是数据如果是几百万条呢?浏览器直接卡死,等你离开座位出去喝了杯咖啡,上了个厕所,和前台mm聊了个天,回来发现浏览器已经"程序未响应"了,你该怎么办? 老板让你