深圳怎么注册公司网站赣州建设网站

张小明 2025/12/27 10:55:46
深圳怎么注册公司网站,赣州建设网站,制作小程序和网站的公司,铜陵做网站的公司文章目录1. 文件操作和IO1.1java中操作文件1.2文件内容的读写--数据流InputStreamOutputStreamReaderWriter2.练习 对普通文件进行复制1. 文件操作和IO 1.1java中操作文件 Java中通过java.io.File类来对一个文件#xff08;包括目录#xff09;进行抽象的描述#xff0c;有…文章目录1. 文件操作和IO1.1java中操作文件1.2文件内容的读写--数据流InputStreamOutputStreamReaderWriter2.练习 对普通文件进行复制1. 文件操作和IO1.1java中操作文件Java中通过java.io.File类来对一个文件包括目录进行抽象的描述有File对象并不代表真实存在该文件比如在获取文件名称时不要求文件必须存在1.2文件内容的读写–数据流java中的流分为字节流和字符流1.字节流以字节为单位适用于二进制文件抽象类输入流InputStream输出流OutputStream实现类输入流FileinputStream输出流FileoutputStream2.字符流以字符为单位适用于文本文件抽象类输入流Reader输出流Writer实现类输入流FileReader输出流FileWriter输入输出的视角是CPUInputStream这几个方法都大同小异只详细说明一个方法1.read返回值类型int读取一个字节的数据返回-1表示已经完全读完了2.readbyte[] b 返回值类型int最多读取b.length字节的数据到b中返回实际读到的数量-1代表已经读完了3.readbyte[]bint offint len最多读取len-off字节的数据到b中放在从off开始返回实际读到的数量-1代表已经读完了4.close返回值void关闭字节流InputStream只是个抽象类要使用还需要具体的实现类关于InputStream的实现类还有很多基本可以认为不同的输入设备都可以对应一个InputStream类我们只关心从文件中读取所以使用FileInputStreamOutputStream与InputStream相比多了一个flush方法返回值是void强调flush()方法我们知道 I/O 的速度是很慢的所以大多的 OutputStream 为了减少设备操作的次数在写数据的时候都会将数据先暂时写入内存的一个指定区域里直到该区域满了或者其他指定条件时才真正将数据写入设备中这个区域一般称为缓冲区。但造成一个结果就是我们写的数据很可能会遗留一部分在缓冲区中。需要在最后或者合适的位置调用 flush刷新操作将数据刷到设备中。后面练习代码中展示强烈建议在代码中手动调用flush方法后再关闭流ReaderpublicclassFileoi{publicstaticvoidmain(String[]args)throwsIOException{ReaderreadernewFileReader(d:/text.txt);/*Reader类是抽象类只能new子类标准库已经提供了现成的类了 创建Reader对象的过程就是打开文件的过程*/while(true){char[]cbufnewchar[3];intnreader.read(cbuf);//一次读取若干个字符把参数指定的cbuf字符填满/*当int n reader.read() 为什么是返回的int类型因为返回的是0-65535范围的数正好是无符号char能表示的范围 这里正好是两个字节范围但如果是utf8编码一个中文对应三个字节那该怎么办呢 是因为字符规定是unicode编码一个中文对应两个字节变成string类型才大概率是utf8(可配置也可能不是*/if(n-1){//文件读完了用-1表示break;}System.out.println(nn);for(inti0;in;i){System.out.print(cbuf[i]);}}reader.close();//当上面逻辑有异常时执行不到}}上述代码当上面逻辑有异常时close执行不到会导致资源泄露所以用try语句改进一下try(ReaderreadernewFileReader(d:/text.txt)){/*try with resources,这个语法就是()里面定义的变量 在try代码块结束时会自动执行close方法但是里面的对象要实现closeable接口*/while(true){char[]cbufnewchar[3];intnreader.read(cbuf);//一次读取若干个字符把参数指定的cbuf字符填满if(n-1){break;}System.out.println(nn);for(inti0;in;i){System.out.print(cbuf[i]);}}}Writer2.练习 对普通文件进行复制⽤户输⼊源⽂件的路径检查源⽂件是否存在并且是⼀个⽂件⽤户输⼊⽬标⽂件的路径检查⽬标⽂件是否存在并校验⽬录或⽂件完成复制publicclassDemo_15_CopyFile{publicstaticvoidmain(String[]args){// 接收源⽂件路径System.out.println(请输⼊源⽂件的路径(绝对路径):);ScannerscannernewScanner(System.in);StringsourcePathscanner.next();// 根据源⽂件路径创建⽂件对象FilesourceFilenewFile(sourcePath);// 判断⽂件是否存在if(!sourceFile.exists()){System.out.println(源⽂件sourcePath,不存在.请重新输 ⼊.);return;}// 是否⽬录if(!sourceFile.isFile()){System.out.println(源⽂件sourcePath,不是⼀个有效⽂件 不能复制.);return;}// 接收⽤户输⼊的⽬标⽂件路径System.out.println(请输⼊⽬标⽂件的路径(绝对路径):);StringdestPathscanner.next();FiledestFilenewFile(destPath);// 判断⽬标路径是否存在if(destFile.exists()){if(destFile.isDirectory()){System.out.println(⽬标⽂件: destPath,是⼀个⽬录,请重新输⼊.);return;}if(destFile.isFile()){System.out.println(⽬标⽂件: destPath,已经存在,请 重新输⼊.);return;}}// 判断路径是否有效if(!destFile.getParentFile().exists()){System.out.println(⽬标路径⽆效.);return;}// 开始复制⽂件, 读取源⽂件并写⼊新⽂件try(InputStreamsourceStreamnewFileInputStream(sourceFile);OutputStreamoutputStreamnewFileOutputStream(destFile)){// 创建⼀个数组接收⽂件内容byte[]bytesnewbyte[1024];// 循环读取while(true){//intlensourceStream.read(bytes);if(len-1){break;}// 写⼊⽬标⽂件outputStream.write(bytes,0,len);// 刷新缓冲区outputStream.flush();}}catch(FileNotFoundExceptione){e.printStackTrace();}catch(IOExceptione){e.printStackTrace();}System.out.println(复制完成.);}}
版权声明:本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!

深圳龙岗网站建设哪家好公司基于asp.net网站开发

快速体验 打开 InsCode(快马)平台 https://www.inscode.net输入框内输入如下内容: 构建一个简易社交网络原型,使用Redis Cluster存储用户关系图谱。实现功能:1) 用户关注关系存储(使用Redis Set) 2) 二度人脉查询 3) …

张小明 2025/12/25 13:23:04 网站建设

做陶瓷公司网站江西网站备案

Bili2text终极指南:一键提取B站视频文字内容的完整教程 【免费下载链接】bili2text Bilibili视频转文字,一步到位,输入链接即可使用 项目地址: https://gitcode.com/gh_mirrors/bi/bili2text 还在为B站视频中的精彩内容无法快速记录而…

张小明 2025/12/25 13:23:07 网站建设

做网站最小的字体是多少像素网站建设基本流程 dns

还在为Google SafetyNet认证失败而烦恼吗?当你发现心爱的银行应用无法打开、热门游戏闪退退出,或者流媒体服务拒绝运行时,SafetyNet Fix就是你的最佳解决方案。这个强大的Magisk模块专门为root用户设计,能够有效绕过Google的严格安…

张小明 2025/12/25 13:23:07 网站建设

python网站建设代码千博网站管理系统安装

Langchain-Chatchat 支持知识库操作多地容灾吗? 在企业构建智能问答系统的今天,一个常被忽视但至关重要的问题浮出水面:当服务器宕机、磁盘损坏或数据中心遭遇区域性故障时,我们的知识库还能“活”着吗?尤其是像 Langc…

张小明 2025/12/25 13:23:06 网站建设

长沙做网站比较好的公司北京百度推广开户

想要让语音识别变得又快又准?Whisper Large-V3-Turbo就是你的完美选择!这款由OpenAI推出的高效语音识别模型,通过革命性的架构优化,在保持多语言能力的同时实现了速度的飞跃式提升,让语音交互进入全新境界。 【免费下载…

张小明 2025/12/27 10:46:47 网站建设

少儿编程免费网站东吴钢结构网架公司

VoIP 攻击与安全防护全解析 1. VoIP 基础概述 VoIP(Voice over IP)是一种用于在 IP 网络上传输语音的通用技术。其部署范围广泛,从简单的点对点通信设置,到为客户和终端用户提供新通信服务的全运营商级基础设施都有涉及。大多数 VoIP 解决方案依赖多种协议,至少包括一个…

张小明 2025/12/25 13:23:08 网站建设