`
圣米格利托
  • 浏览: 57905 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

OutputStream和InputStream实例

阅读更多

OutputStream和InputStream实例

 

  import java.io.File;

 

  import java.io.OutputStream;

 

  import java.io.FileOutputStream;

 

  public class OutputStreamDemo03

 

  {

 

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

 

  File file = new File( "H:"+File.separator+"programTest"+File.separator+"IO"+File.separator+"字符流与字符流"+File.separator+"test.txt");

 

  OutputStream out = null;

 

  out = new FileOutputStream(file,true); //是否追加

 

  String str = " 新增非覆盖!";

 

  byte[] b = str.getBytes();

 

  for(byte temp:b){

 

  out.write(temp);

 

  }

 

  //out.write(b);

 

  //out.flush();

 

  out.close();

 

  out = new FileOutputStream(file,true); //是否追加

 

  str = " \r\n我是换行的哦!"; // \r\n换行

 

  b = str.getBytes();

 

  for(byte temp:b){

 

  out.write(temp);

 

  }

 

  //out.write(b);

 

  //out.flush();

 

  out.close();

 

  }

 

  };

 

  import java.io.File;

 

  import java.io.InputStream;

 

  import java.io.FileInputStream;

 

  public class InputStreamDemo01

 

  {

 

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

 

  File file = new File( "H:"+File.separator+"programTest"+File.separator+"IO"+File.separator+"字符流与字符流"+File.separator+"test.txt");

 

  InputStream input = null;

 

  input = new FileInputStream(file); //是否追加

 

  String str = " 新增非覆盖!";

 

  byte[] b = new byte[1024]; //所有内容读到此数组中

 

  input.read(b);

 

  input.close();

 

  System.out.println("读取到的字符串为:"+new String(b));

 

  }

 

  };

 

  //此时内容已读取过来,不过有很多空格,因为b的大小为1024

 

  修改为

 

  import java.io.File;

 

  import java.io.InputStream;

 

  import java.io.FileInputStream;

 

  public class InputStreamDemo01

 

  {

 

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

 

  File file = new File( "H:"+File.separator+"programTest"+File.separator+"IO"+File.separator+"字符流与字符流"+File.separator+"test.txt");

 

  InputStream input = null;

 

  input = new FileInputStream(file); //是否追加

 

  String str = " 新增非覆盖!";

 

  byte[] b = new byte[1024]; //所有内容读到此数组中

 

  int len = input.read(b);

 

  input.close();

 

  System.out.println("读取到的字符串为:"+new String(b,0,len));

 

  }

 

  };

 

  高效方式

 

  byte[] b = new byte[(int)f.length()]; //开辟文件大小的空间

 

  input.read(b);

 

  input.close();

 

  System.out.println("读取到的字符串为:"+new String(b));

 

  byte[] b = new byte[(int)file.length()]; //所有内容读到此数组中

 

  for(int i=0;i<b.length;i++){

 

  b[i] = (byte)input.read();

 

  }

 

  input.close();

 

  System.out.println("读取到的字符串为:"+new String(b));

 

  带背景字体部分适用于知道文件大小时可用,input.read()读到文件末尾时值为-1,

 

  byte[] b = new byte[(int)f.length()]; //开辟文件大小的空间

 

  int len = 0;

 

  int temp = 0;

 

  while((temp = input.read()) != -1)

 

  {

 

  b[len] = (byte)temp;

 

  len++;

 

  }

 

  input.close();

 

  System.out.println("读取到的字符串为:"+new String(b,0,len));

 

  带横线部分适合于不知道所读内容大小时,通过input.read()读到文件末尾时值为-1进行判断输出

分享到:
评论

相关推荐

    将输出流OutputStream转化为输入流InputStream的方法

    首先,我们需要理解`OutputStream`和`InputStream`这两个核心的I/O类。`OutputStream`是用于写出数据到目的地的流,而`InputStream`则是用于读取数据的流。在Java中,它们是Java.io包下的基础类,提供了多种子类来...

    java 文件存储 Inputstream outputstream reader writer的用法

    通过以上的实例,你可以了解到Java中如何使用`InputStream`、`OutputStream`、`Reader`和`Writer`进行文件读写操作。不断实践这些基本的IO操作,将有助于你更好地理解和掌握Java的文件处理能力。

    Java基础核心+InputStream输入流+OutputStream输出流

    本教程将聚焦于Java的基础核心,以及两个重要的I/O(输入/输出)流类——InputStream和OutputStream,它们在文件操作中扮演着关键角色。 InputStream和OutputStream是Java.io包下的抽象类,是所有字节流的基类。...

    java-0126递归&过滤器(listFiter)&InputStream&OutputStream

    InputStream 和 OutputStream InputStream 是一种输入流,用于读取数据。InputStream 可以用来读取文件、网络数据等。 OutputStream 是一种输出流,用于写入数据。OutputStream 可以用来写入文件、网络数据等。 ...

    Java中的字节流文件读取教程(一)

    字节流基类包括InputStream和OutputStream,分别作为读字节流和写字节流的基类。所有字节相关的流都必然继承自他们中任意一个。InputStream和OutputStream都是抽象类,定义了最基本的读写操作。 3. InputStream中的...

    android socket通信实例程序

    在Android平台上进行网络通信时,Socket通信是...在学习和使用这个实例时,可以深入理解TCP连接的建立、数据的封装与解封装,以及Android网络编程的细节。通过实践,你可以更好地掌握这些知识点,并运用到实际项目中。

    handleStream ServletOutputStream out = response.getOutputStream(); InputStream i

    标签中的"源码"提示我们可能需要深入理解`ServletOutputStream` 和`InputStream` 的内部实现,包括它们如何与网络I/O交互,以及如何处理缓冲区和数据编码等问题。而"工具"可能指的是使用这些流类来构建各种服务器端...

    javaIO实例

    字节流处理的是原始字节,适用于所有类型的数据,包括InputStream、OutputStream、InputStream和OutputStream等类。 在Java IO实例中,文件操作是最常见的应用场景。例如,`File`类用于表示文件和目录路径名的抽象...

    android socket 编程实例

    在这个实例中,我们将深入探讨如何在Android客户端和Java服务器端实现Socket通信。 首先,让我们理解Socket的基本概念。Socket可以被视为网络上的一个端点,用于两个程序之间的通信。在TCP/IP协议栈中,Socket接口...

    JAVA基础实例200题.rar

    实例会介绍InputStream、OutputStream、Reader、Writer等类的使用。 通过这200个实例的实践,你可以逐步建立坚实的Java编程基础,提高问题解决能力,并为更高级的Java应用开发打下坚实的基础。无论你是初学者还是...

    250个Java实例源代码

    Java I/O流用于数据的读写操作,这些实例可能会涵盖文件操作、网络通信等,涉及到InputStream、OutputStream、BufferedReader、PrintWriter等类。 另外,Java还提供了丰富的API,如Swing或JavaFX用于图形用户界面...

    串口实例串口实例串口实例串口实例串口实例串口实例

    在提供的"串口实例串口实例串口实例串口实例串口实例串口实例.zip"文件中,应该包含了具体的代码示例和更详细的解释,你可以下载并参考这些材料进一步学习和实践。 总之,Java的串口通信功能虽然相对复杂,但通过...

    JAVA经典实例

    实例会教你如何使用InputStream和OutputStream,以及更高级的Reader和Writer类。 6. **多线程**:Java支持多线程编程,实例会演示如何创建和管理线程,以及同步和互斥的概念,这对于开发高性能的应用非常重要。 7....

    JAVA学习实例15个

    5. **IO流**:学习如何进行文件读写,输入输出流(InputStream/OutputStream)和字符流(Reader/Writer)的使用,以及缓冲区流(BufferedReader/BuffereedWriter)的优化。 6. **多线程**:Java内置对多线程的支持...

    JAVA应用实例集合

    实例将教你如何使用InputStream、OutputStream、Reader、Writer等类进行数据传输。 7. **多线程**:Java内置了对多线程的支持,例如Thread类和Runnable接口。实例将演示如何创建和管理线程,实现并发执行,以及同步...

    Java socket编程实例代码(Blog配套代码)

    - 关闭资源:当通信结束时,应关闭Socket、InputStream和OutputStream,避免资源泄漏。 5. **多用户聊天**: - 在"SimpleChatroom"中,服务器端可能有一个消息广播机制,收到任何客户端的消息后,将其广播给所有...

    100个实例的Java源程序

    实例可能涵盖FileReader、FileWriter、InputStream和OutputStream等类的用法。 6. **线程编程**:Java内置了多线程支持,实例可能展示如何创建和管理线程,理解同步和互斥的概念,以及使用synchronized关键字和...

    Java常用实例程序

    InputStream和OutputStream是所有字节流的基类,而Reader和Writer则是字符流的基类。 7. **多线程**:Java内置对多线程的支持,可以通过实现Runnable接口或继承Thread类来创建线程。线程同步机制包括synchronized...

    java实例源码百例(经典)

    - 流的概念:InputStream和OutputStream用于处理字节流,Reader和Writer处理字符流。 6. **多线程**: - Thread类:创建和管理线程,实现并发执行。 - Synchronized关键字:保证多线程环境下的数据同步和安全性...

    徐明浩java编程基础应用与实例代码

    6. **输入/输出流**:讨论文件操作,网络通信,以及使用InputStream、OutputStream、Reader、Writer等I/O流进行数据传输。 7. **多线程**:解释线程的创建、同步、协作,以及线程池的使用,以实现高效的并发编程。 ...

Global site tag (gtag.js) - Google Analytics