请简述可以使用IO流的哪些方式将对一个文本文件进行拷贝 在线急等

请简述可以使用IO流的哪些方式将对一个文本文件进行拷贝 在线急等,第1张

万物皆字卜腊节。

使穗弊汪用

BufferedInputStream[缓冲区输入流]

BufferedOutputStream[缓冲区输出流]

这两个流是内置了缓冲区流,也就是说内部有一个 字节数组

直接使用

FileInputStream 文件输入流

FileOutputStream 文件输出流

然后new一个byte[],用来储存移动字节

while(( b = xxx1.read()) != -1){

xxx2.write(b)

}

这样两种方法,实现文件的复制(先要定一个文件路径,不然程序找猜仔不到文件)

如果要复制文件夹,可以使用递归,里面夹杂文件复制。

——如果对你有帮助,请采纳,谢谢

基本 *** 作如下:

你要补充的是:

1 动态输入内容

2 异常处理

import java.io.BufferedReader

import java.io.BufferedWriter

import java.io.IOException

import java.io.InputStream

import java.io.InputStreamReader

import java.io.OutputStream

import java.io.OutputStreamWriter

import java.util.LinkedList

public class Command {

 private java.lang.Process p 

 private InputStream is

 private OutputStream 陆行os

 private BufferedWriter bw

 private BufferedReader br

 private ProcessBuilder pb

 private InputStream stdErr

 public Command() {

 }

 //获取Process的输入,输出流

 public void setCmd(String cmd) {

  try {

   p = Runtime.getRuntime().exec(cmd)

   os = p.getOutputStream()

   is = p.getInputStream()

   stdErr = p.getErrorStream()

  } catch (IOException e) {

   System.err.println(e.getMessage())

  }

 }

 //向Process输出命令

 public void writeCmd(String cmd) {

  try {

   bw = new BufferedWriter(new OutputStreamWriter(os))

   bw.write(cmd)

   bw.newLine()

   bw.flush()

   bw.close()

  } catch (Exception e) {

   e.printStackTrace()

  }

 }

 //读出Process执行的结果

 public String readCmd() {

  StringBuffer sb = new StringBuffer()

  br = new BufferedReader(new InputStreamReader(is))

  String buffer = null

  try {

   while ((buffer = br.readLine()) != null) {

 早液哗   sb.append(buffer + "\n")

   }

   System.out.println(p.waitFor())

  } catch (Exception e) {

   e.printStackTrace()

  }

  return sb.toString()

 }

 //将命令一股埋首脑塞入list中

 public LinkedList<String> doCmd(LinkedList<String> lists) {

  LinkedList<String> list = new LinkedList<String>()

  for (String s : lists) {

   writeCmd(s)

   list.add(readCmd())

  }

  return list

 }

 public static void main(String[] args) {

  Command cmd = new Command()

  cmd.setCmd("cmd")

  cmd.writeCmd("copy d:\\a.txt e:\\ ")

  System.out.println(cmd.readCmd())

 }

}


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/tougao/12214109.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-21
下一篇2023-05-21

发表评论

登录后才能评论

评论列表(0条)

    保存