文件流操作--将一个文件复制到另外一个地方

class Program
    {
        static void Main(string[] args)
        {
            //源
            string source = @"C:\Users\Steve\Desktop\搞笑资料\疯狂的足球1.rmvb";

            //目标
            string target = @"d:\疯狂的足球1.rmvb";

            //调用复制文件的方法
            CopyFile(source, target);

            Console.WriteLine("ok");
            Console.Read();
        }

        private static void CopyFile(string source, string target)
        {
            //1.创建一个指向源文件的文件流
            using (FileStream fsRead = File.OpenRead(source))
            {
                using (FileStream fsWrite = File.OpenWrite(target))
                {
                    //缓冲区
                    byte[] buffers = new byte[1024 * 1024 * 5];

                    //从源文件中读取一部分字节到buffers中
                    int r = fsRead.Read(buffers, 0, buffers.Length);
                    while (r > 0)
                    {
                        Console.Write(". ");
                        //将上次读取到的内容写入到文件流中
                        fsWrite.Write(buffers, 0, r);
                        r = fsRead.Read(buffers, 0, buffers.Length);
                    }
                }
            }
        }
    }

当需要将一个HttpServletRequest对象中的文件赋值给另一个HttpServletRequest对象时,可以通过以下步骤进行操作: 1. 获取源HttpServletRequest对象中的文件: ```java InputStream inputStream = request.getInputStream(); ``` 2. 创建目标HttpServletRequest对象: ```java HttpServletRequest targetRequest = new HttpServletRequestWrapper(request); ``` 3. 将文件赋值给目标HttpServletRequest对象: ```java ((HttpServletRequestWrapper) targetRequest).setInputStream(inputStream); ``` 4. 确保目标HttpServletRequest对象中的输入可读取: ```java targetRequest.getInputStream().available(); ``` 下面是一个完整的示例代码: ```java import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletRequestWrapper; import java.io.IOException; import java.io.InputStream; public class RequestUtils { public static HttpServletRequest copyHttpServletRequest(HttpServletRequest request) throws IOException { // 获取源HttpServletRequest对象中的文件 InputStream inputStream = request.getInputStream(); // 创建目标HttpServletRequest对象 HttpServletRequest targetRequest = new HttpServletRequestWrapper(request); // 将文件赋值给目标HttpServletRequest对象 ((HttpServletRequestWrapper) targetRequest).setInputStream(inputStream); // 确保目标HttpServletRequest对象中的输入可读取 targetRequest.getInputStream().available(); return targetRequest; } } ``` 在其他地方使用时,可以按照以下方式调用: ```java // 复制HttpServletRequest对象 HttpServletRequest copiedRequest = RequestUtils.copyHttpServletRequest(sourceRequest); ``` 这样,copiedRequest对象中就包含了与sourceRequest对象相同的文件
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值