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

网友投稿 258 2023-02-28


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);joYBdHcB

bufout.flush();// 强制输出至指定的输出装置

bufin.reset();// 将读取位置移至标记处,也就是流中的第一位

bufin.read(input, 0, count);

p.print("字符串的前半段:");

bufout.write(input, 0, count / 2);

//相当于System.out.println();

bufout.write((injoYBdHcBt)('\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流操作之数据流实例代码的全部内容,希望对大家有所帮助。感兴趣的朋友可以继续参阅本站其他相关专题,如有不足之处,欢迎留言指出。感谢朋友们对本站的支持!


版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:java date类与string类实例代码分享
下一篇:java短信验证码获取次数限制实例
相关文章

 发表评论

暂时没有评论,来抢沙发吧~