Java流操作之数据流实例代码

实例1:

package dataInputStreamAndPrintStreamDemo;
import java.io.BufferedInputStream;
import java.io.BufferedOutputStream;
import java.io.DataInputStream;
import java.io.DataOutputStream;
import java.io.IOException;
import java.io.PrintStream;
//示范如何自键盘读入字符串,并使用DataInputStream,PrintStream类将程序执行显示在屏幕(标准输出)上
public class DataInputStreamAndPrintStreamDemo {
 public static void main(String[] args) {
 int count;
 byte input[] = new byte[256];
 String InputString;
 // 键盘读入
 DataInputStream stdin = new DataInputStream(System.in);
 //提高执行效率,几乎所有的InputStream类都可以被BufferedStream类包覆(wrap)来提高I/O效率
 BufferedInputStream bufin = new BufferedInputStream(stdin);
 // 屏幕输出
 DataOutputStream stdout = new DataOutputStream(System.out);// 将结果输出至屏幕
 BufferedOutputStream bufout = new BufferedOutputStream(stdout);// 提高输出效率
 PrintStream p = new PrintStream(System.out);// 将结果输出至屏幕
 try {
 if (bufin.markSupported()) {
 p.println("支持串流标记:是");// 使用PrintStream输出
 p.println("输入字符串,结束请按【Enter】...\n" + "=>");
 //使得流在第一个位被作上标记(mark),并且会保留256位(mark(256))
 bufin.mark(256);
 //读取字节并存放在指定的数组中
 count = bufin.read(input);
 p.println("读入字符数:" + count);
 p.print("你输入的字符串为:");
 // 写入流,只是将数据写入流中而已,并不输出数据
 // 所以在其后必须使用flush()函数将流中的数据强制输出
 bufout.write(input, 0, count);
 bufout.flush();// 强制输出至指定的输出装置
 bufin.reset();// 将读取位置移至标记处,也就是流中的第一位
 bufin.read(input, 0, count);
 p.print("字符串的前半段:");
 bufout.write(input, 0, count / 2);
 //相当于System.out.println();
 bufout.write((int)('\n'));
 bufout.flush();
 bufin.reset();
 bufin.skip(count / 2);
 bufin.read(input, 0, count / 2);
 p.print("字符串的后半段:");
 bufout.write(input, 0, count / 2);
 bufout.flush();
 } else {
 System.out.println("字符串流标记:否");
 }
 // 关闭流
 p.close();
 stdin.close();
 bufin.close();
 stdout.close();
 bufout.close();
 } catch (IOException E) {
 System.out.println("发生I/O错误!!!");
 }
 }
}
//其实我们对PrintStream类应该很熟悉才对,System.out就是一个PrintStream类对象,其提供的print()和println()函数
//几乎可显示所有数据类型的变量 
//例程2:package iotest; 

import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.PrintStream;
import java.util.logging.Level;
import java.util.logging.Logger; 

public class IOtest { 

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

  byte buf[] = new byte[255];
  byte bufin[] = new byte[255];    //只能用byte格式将数据送入文件
  String str = "输入的文字:";
  buf = str.getBytes();
  try {
   FileOutputStream fout = new FileOutputStream("test.txt");
   PrintStream p = new PrintStream(fout);
   p.println("输入的文字~~~~~~~"+'\n');  //方式一
    fout.write(buf, 0, buf.length); //方式二
    fout.write(buf);     //方式三
    //fout.flush();
    //fout.close();
    System.out.println("快输入文字:");
    int bytes = System.in.read(bufin, 0, 255); 

    //追加文本!!!!!!!!!!!!!!!!
    //fout = new FileOutputStream("test.txt",true);
    fout.write(bufin, 0, bytes);
  } catch (FileNotFoundException ex) {
   Logger.getLogger(IOtest.class.getName()).log(Level.SEVERE, null, ex);
  } 

 } 

} 

结果:

//输入的文字~~~~~~~ 

//输入的文字:输入的文字:鍩庡競宸ヤ笟 fdsfdssssssssssssssssssssssssssss 

总结

以上就是本文关于Java流操作之数据流实例代码的全部内容,希望对大家有所帮助。感兴趣的朋友可以继续参阅本站其他相关专题,如有不足之处,欢迎留言指出。感谢朋友们对本站的支持!

您可能感兴趣的文章:

  • java 流操作对文件的分割和合并的实例详解
(0)

相关推荐

  • java 流操作对文件的分割和合并的实例详解

    java 流操作对文件的分割和合并的实例详解 学习文件的输入输出流,自己做一个小的示例,对文件进行分割和合并. 下面是代码: package com.dufy.file; import java.io.File; import java.io.FileInputStream; import java.io.FileOutputStream; import java.io.IOException; import java.io.SequenceInputStream; import java.ut

  • Java流操作之数据流实例代码

    实例1: package dataInputStreamAndPrintStreamDemo; import java.io.BufferedInputStream; import java.io.BufferedOutputStream; import java.io.DataInputStream; import java.io.DataOutputStream; import java.io.IOException; import java.io.PrintStream; //示范如何自键

  • Java实现FTP服务器功能实例代码

    FTP(File Transfer Protocol 文件传输协议)是Internet 上用来传送文件的协议.在Internet上通过FTP 服务器可以进行文件的上传(Upload)或下载(Download).FTP是实时联机服务,在使用它之前必须是具有该服务的一个用户(用户名和口令),工作时客户端必须先登录到作为服务器一方的计算机上,用户登录后可以进行文件搜索和文件传送等有关操作,如改变当前工作目录.列文件目录.设置传输参数及传送文件等.使用FTP可以传送所有类型的文件,如文本文件.二进制可执

  • java中的 toString()方法实例代码

    前言: toString()方法 相信大家都用到过,一般用于以字符串的形式返回对象的相关数据. 最近项目中需要对一个ArrayList<ArrayList<Integer>> datas  形式的集合处理. 处理要求把集合数据转换成字符串形式,格式为 :子集合1数据+"#"+子集合2数据+"#"+....+子集合n数据. 举例: 集合数据 :[[1,2,3],[2,3,5]]  要求转成为 "[1,2,3]#[2,3,5]"

  • java随机验证码生成实现实例代码

    java随机验证码生成实现实例代码 摘要: 在项目中有很多情况下都需要使用到随机验证码,这里提供一个java的随机验证码生成方案,可以指定难度,生成的验证码可以很方便的和其他组件搭配 之前要使用一个生成随机验证码的功能,在网上找了一下,有很多的人提出了不同的解决方案,但是很多人都使用了com.sun.image.这个包或者子包里面的类,而这个包结构下面的类都是不推荐使用的,我们应该依赖于java.或者javax.这些包结构下面的类,否则将来的可移植性就很不好(比如换成IBM的JDK就不行了),但

  • Android 操作excel功能实例代码

    学习app对excel的读写控制 1.界面设计 <?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:id="@+id

  • java实现远程桌面的实例代码

    java实现远程桌面的实例代码 控制端将鼠标事件传递到服务端 服务端拿到鼠标事件之后传输到客户端 客户端拿到鼠标事件之后,通过robot类即可完成,并且截屏将图片发给服务器,服务器再发给控制端 被我简化之后得到 //先介绍一下robot类的简单使用 import java.awt.AWTException; import java.awt.Robot; import java.awt.event.InputEvent; /** * 使用robot * @author 哑元 * */ public

  • HDFS的Java API的访问方式实例代码

    本文研究的主要是HDFS的Java API的访问方式,具体代码如下所示,有详细注释. 最近的节奏有点儿快,等有空的时候把这个封装一下 实现代码 要导入的包: import java.io.IOException; import java.net.URI; import java.net.URISyntaxException; import org.apache.hadoop.conf.Configuration; import org.apache.hadoop.fs.BlockLocation

  • Java生成压缩文件的实例代码

    在工作过程中,需要将一个文件夹生成压缩文件,然后提供给用户下载.所以自己写了一个压缩文件的工具类.该工具类支持单个文件和文件夹压缩.放代码: import java.io.BufferedOutputStream; import java.io.File; import java.io.FileInputStream; import java.io.FileOutputStream; import org.apache.tools.zip.ZipEntry; import org.apache.

  • Java实现单链表翻转实例代码

    Java实现单链表反转,递归和非递归两种形式 /** * 反转单链表 */ /** * 定义链表 * * @author 16026 * */ class Node { int val; Node next; public Node(int val) { this.val = val; } } public class ReverseList { /** * 反转链表 * * @param head * @return */ public static Node reverseList(Node

随机推荐