欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

Java和C#输入输出流的方法(详解)

程序员文章站 2024-03-12 21:19:08
1,java中操作方法: import java.io.*; public class fileinputstreamtest { pu...

1,java中操作方法:

import java.io.*;  
public class fileinputstreamtest  
{  
  public static void main(string[] args) throws ioexception  
  {  
    //创建字节输入流  
    fileinputstream fis = new fileinputstream("fileinputstreamtest.java");  
    //创建一个长度为1024的竹筒  
    byte[] bbuf = new byte[1024];  
    //用于保存实际读取的字节数  
    int hasread = 0;  
    //使用循环来重复“取水”的过程  
    while((hasread = fis.read(bbuf))>0)  
    {  
      //取出"竹筒"中(字节),将字节数组转成字符串输入  
      system.out.println(new string(bbuf,0,hasread));  
    }  
    fis.close();  
  }  
}  
import java.io.*;  
public class filereadertest  
{  
  public static void main(string[] args) throws ioexception   
  {  
    filereader fr = null;  
    try  
    {  
      //创建字符输入流  
      fr = new filereader("filereadertest.java");  
      //创建一个长度为32的"竹筒"  
      char[] cbuf = new char[32];  
      //用于保存实际读取的字符数  
      int hasread = 0;  
      //使用循环来重复“取水”的过程  
      while((hasread = fr.read(cbuf))>0)  
      {  
        //取出"竹筒"中(字节),将字节数组转成字符串输入  
        system.out.println(new string(cbuf,0,hasread));  
      }  
    }  
    catch (ioexception ioe)  
    {  
      ioe.printstacktrace();  
    }  
    finally  
    {  
      //关闭文件输入流  
      if(fr != null)  
      {  
        fr.close();  
      }  
    }  
  }  
}   

2,c#中操作方法:

/* - - - - - - - - - - - - - - - - - - - - - - - -  
 * stream 和 byte[] 之间的转换 
 * - - - - - - - - - - - - - - - - - - - - - - - */  
/// <summary>  
/// 将 stream 转成 byte[]  
/// </summary>  
public byte[] streamtobytes(stream stream)  
{  
  byte[] bytes = new byte[stream.length];  
  stream.read(bytes, 0, bytes.length);  
  // 设置当前流的位置为流的开始  
  stream.seek(0, seekorigin.begin);  
  return bytes;  
}  
/// <summary>  
/// 将 byte[] 转成 stream  
/// </summary>  
public stream bytestostream(byte[] bytes)  
{  
  stream stream = new memorystream(bytes);  
  return stream;  
}  
 
/* - - - - - - - - - - - - - - - - - - - - - - - -  
 * stream 和 文件之间的转换 
 * - - - - - - - - - - - - - - - - - - - - - - - */  
/// <summary>  
/// 将 stream 写入文件  
/// </summary>  
public void streamtofile(stream stream,string filename)  
{  
  // 把 stream 转换成 byte[]  
  byte[] bytes = new byte[stream.length];  
  stream.read(bytes, 0, bytes.length);  
  // 设置当前流的位置为流的开始  
  stream.seek(0, seekorigin.begin);  
  // 把 byte[] 写入文件  
  filestream fs = new filestream(filename, filemode.create);  
  binarywriter bw = new binarywriter(fs);  
  bw.write(bytes);  
  bw.close();  
  fs.close();  
}  
/// <summary>  
/// 从文件读取 stream  
/// </summary>  
public stream filetostream(string filename)  
{        
  // 打开文件  
  filestream filestream = new filestream(filename, filemode.open, fileaccess.read, fileshare.read);  
  // 读取文件的 byte[]  
  byte[] bytes = new byte[filestream.length];  
  filestream.read(bytes, 0, bytes.length);  
  filestream.close();  
  // 把 byte[] 转换成 stream  
  stream stream = new memorystream(bytes);  
  return stream;  
}  

以上就是小编为大家带来的java和c#输入输出流的方法(详解)全部内容了,希望大家多多支持~