电脑知识|欧美黑人一区二区三区|软件|欧美黑人一级爽快片淫片高清|系统|欧美黑人狂野猛交老妇|数据库|服务器|编程开发|网络运营|知识问答|技术教程文章 - 好吧啦网

您的位置:首頁技術文章
文章詳情頁

新手了解java IO基礎知識

瀏覽:6日期:2022-08-09 11:17:46
目錄一、File類1、簡介2、創(chuàng)建方式3、常用方法二、IO概念1.什么是輸入2.什么輸出(Output)三、流的分類1、InputStream(字節(jié)流)2、OutputStream(字節(jié)流)3、Reader(字符流)4、Writer(字符流)四、總結(1+2)1. File類及方法的使用2.IO流的分類3.IO流的四個基本類總結一、File類1、簡介

java.io.File類:文件和文件目錄路徑的抽象表示形式,與平臺無關 File 能新建、刪除、重命名文件和目錄,但 File 不能訪問文件內(nèi)容本 身。如果需要訪問文件內(nèi)容本身,則需要使用輸入/輸出流。 想要在Java程序中表示一個真實存在的文件或目錄,那么必須有一個 File對象。

2、創(chuàng)建方式

public File(String pathname);//以pathname為路徑創(chuàng)建File對象,可以是絕對路徑或者相對路徑。 絕對路徑:是一個固定的路徑,從盤符開始 相對路徑:是相對于某個位置開始

public File(String parent,String child);//以parent為父路徑,child為子路徑創(chuàng)建File對象。

public File(File parent,String child);//根據(jù)一個父File對象和子文件路徑創(chuàng)建File對象。3、常用方法

public String getAbsolutePath()//獲取絕對路徑public String getPath() //獲取路徑public String getName() //獲取名稱public String getParent()//獲取上層文件目錄路徑。若無,返回nullpublic long length() //獲取文件長度(即:字節(jié)數(shù))public long lastModified() //獲取最后一次的修改時間,毫秒值public String[] list() //獲取指定目錄下的所有文件或者文件目錄的名稱數(shù)組public File[] listFiles()//獲取指定目錄下的所有文件或者文件目錄的File數(shù)組public boolean createNewFile()//當且僅當不存在具有此抽象路徑名指定名稱的文件時,不可分地創(chuàng)建一個新的空文件。 public boolean delete() //刪除此抽象路徑名表示的文件或目錄。 public boolean exists()//測試此抽象路徑名表示的文件或目錄是否存在。 public String[] list()//返回一個字符串數(shù)組,這些字符串指定此抽象路徑名表示的目錄中的文件和目錄。public boolean mkdirs()//創(chuàng)建此抽象路徑名指定的目錄,包括所有必需但不存在的父目錄。 public boolean isDirectory()//判斷是否是文件目錄public boolean isFile()//判斷是否是文件

示例:

public class FileTest { public static void main(String[] args) {//File(String pathname);//以pathname為路徑創(chuàng)建File對象File file = new File('E:aaa');//File(File parent,String child);//根據(jù)一個父File對象和子文件路徑創(chuàng)建File對象。File file1 = new File(file,'test.txt');//boolean exists()判斷文件或目錄是否存在。 if (!(file.exists())){ // boolean mkdirs()創(chuàng)建此路徑名指定的目錄,包括所有必需但不存在的父目錄。 file.mkdirs();}else { try {//boolean createNewFile()當且僅當不存在具有此路徑名指定名稱的文件時,創(chuàng)建一個新的空文件。file1.createNewFile(); } catch (IOException e) {e.printStackTrace(); }}//String getPath()獲取路徑System.out.println(file.getPath());//long length()獲取文件長度(即:字節(jié)數(shù))System.out.println(file.length());//String getName()獲取文件名稱System.out.println(file.getName());//long lastModified()獲取最后一次的修改時間,毫秒值System.out.println(file.getName());// public boolean isFile() :判斷是否是文件System.out.println(file.isFile()); // delete(file); }//遞歸的方式刪除文件或者文件夾 public static void delete(File file){ //File[] listFiles() 獲取指定目錄下的所有文件或者文件目錄的名稱數(shù)組File[] files = file.listFiles();for (File f : files) { //boolean isDirectory()判斷是否是文件目錄 if (f.isDirectory()){delete(f); } //boolean delete()刪除此路徑名表示的文件或目錄。 f.delete();}file.delete(); }

說明:Java中的刪除不到回收站,要刪除一個文件目錄,注意該文件目錄內(nèi)不能包含文件或者文件目錄。

二、IO概念 I/O 即輸入Input/ 輸出Output的縮寫,其實就是計算機調(diào)度把各個存儲中(包括內(nèi)存和外部存儲)的數(shù)據(jù)寫入寫出 java中用“流(stream)”來抽象表示這么一個寫入寫出的功能,封裝成一個“類”,都放在java.io這個包里面。 java.io包下提供了各種“流”類和接口,用以獲取不同種類的數(shù)據(jù),并 通過標準的方法輸入或輸出數(shù)據(jù)1.什么是輸入

​ 程序從內(nèi)存中讀取數(shù)據(jù)叫輸入Input。

2.什么輸出(Output)

​ 程序把數(shù)據(jù)寫入到內(nèi)存中叫輸出Output。

三、流的分類 按操作數(shù)據(jù)單位不同分為:字節(jié)流(8 bit),字符流(16 bit) 按數(shù)據(jù)流的流向不同分為:輸入流,輸出流 按流的角色的不同分為:節(jié)點流,處理流

IO流體系

新手了解java IO基礎知識

1、InputStream(字節(jié)流)

示例:

public static void main(String[] args) { iprt(); } public static void ipst(){InputStream inputStream = null;try { inputStream = new FileInputStream('C:1.txt'); int i; while ( (i = inputStream.read()) != -1){System.out.print((char) i); }} catch (FileNotFoundException e) { e.printStackTrace();} catch (IOException e) { e.printStackTrace();} finally { try {if (inputStream != null){ inputStream.close();} } catch (IOException e) {e.printStackTrace(); }} }

說明:使用InputStream向內(nèi)存中讀如文件數(shù)據(jù)。

2、OutputStream(字節(jié)流)

示例:

public class ImageCopy { public static void main(String[] args) {try(InputStream inputStream = new FileInputStream('D:KDA.jpg');OutputStream outputStream = new FileOutputStream('E:aaaKDA.jpg') ){ byte[] bytes = new byte[1024]; int i; while ((i = inputStream.read(bytes)) != -1){outputStream.write(bytes,0,i); }} catch (IOException e) { e.printStackTrace();} }}

說明:使用輸入流與輸出流結合實現(xiàn)圖片復制的功能。

3、Reader(字符流)

示例:

public static void iprt(){Reader reader = null;try { reader = new FileReader('C:1.txt'); int i ; while ((i = reader.read()) != -1){System.out.print((char) i); }} catch (FileNotFoundException e) { e.printStackTrace();} catch (IOException e) { e.printStackTrace();} finally {try { if (reader != null) {reader.close(); }} catch (IOException e) { e.printStackTrace();}} }

說明:使用Reader(字符流)從文件中讀入數(shù)據(jù)。

4、Writer(字符流)

public static void iprt(){Reader reader = null;Writer writer = null;try { reader = new FileReader('C:Users52425Desktop1.txt'); writer = new FileWriter('C:2.txt'); int i ; while ((i = reader.read()) != -1){writer.write(i); }} catch (FileNotFoundException e) { e.printStackTrace();} catch (IOException e) { e.printStackTrace();} finally {try {writer.close();reader.close();} catch (IOException e) { e.printStackTrace();}} }

說明:使用字符流實現(xiàn)文件復制功能。

四、總結(1+2)1. File類及方法的使用

File是操作文件/目錄的類,可以對文件/目錄進行創(chuàng)建,重命名, 刪除等操作。

2.IO流的分類 根據(jù)數(shù)據(jù)大小可分為:字節(jié)流和字符流 根據(jù)流向可分為:輸入流和輸出流 根據(jù)功能可分為:節(jié)點流和處理流3.IO流的四個基本類 字節(jié)輸入流:InputStream,它的常用子類是FileInputStream 字節(jié)輸出流:OutputStream,它的常用子類是OutputStream 字符輸入流:Reader,它的常用子類是FileReader 字符輸出流:Writer,它的常用子類是FileWriter總結

本篇關于java IO的文章就到這里了,希望能幫到你,也希望你能夠多多關注好吧啦網(wǎng)的更多內(nèi)容!

標簽: Java
相關文章:
主站蜘蛛池模板: 制丸机,小型中药制丸机,全自动制丸机价格-甘肃恒跃制药设备有限公司 | 博客-悦享汽车品质生活| 混合生育酚_醋酸生育酚粉_琥珀酸生育酚-山东新元素生物科技 | 特种电缆厂家-硅橡胶耐高温电缆-耐低温补偿导线-安徽万邦特种电缆有限公司 | 恒压供水控制柜|无负压|一体化泵站控制柜|PLC远程调试|MCGS触摸屏|自动控制方案-联致自控设备 | 旋振筛|圆形摇摆筛|直线振动筛|滚筒筛|压榨机|河南天众机械设备有限公司 | 自动化生产线-自动化装配线-直流电机自动化生产线-东莞市慧百自动化有限公司 | LHH药品稳定性试验箱-BPS系列恒温恒湿箱-意大利超低温冰箱-上海一恒科学仪器有限公司 | 细胞染色-流式双标-试剂盒免费代做-上海研谨生物科技有限公司 | 胶辊硫化罐_胶鞋硫化罐_硫化罐厂家-山东鑫泰鑫智能装备有限公司 意大利Frascold/富士豪压缩机_富士豪半封闭压缩机_富士豪活塞压缩机_富士豪螺杆压缩机 | 爱德华真空泵油/罗茨泵维修,爱发科-比其尔产品供应东莞/杭州/上海等全国各地 | Pos机办理_个人商户免费POS机申请-拉卡拉办理网 | 免费B2B信息推广发布平台 - 推发网| 破碎机锤头_耐磨锤头_合金锤头-鼎成机械一站式耐磨铸件定制服务 微型驱动系统解决方案-深圳市兆威机电股份有限公司 | 焊锡丝|焊锡条|无铅锡条|无铅锡丝|无铅焊锡线|低温锡膏-深圳市川崎锡业科技有限公司 | 拉力机-万能试验机-材料拉伸试验机-电子拉力机-拉力试验机厂家-冲击试验机-苏州皖仪实验仪器有限公司 | 伺服电机维修、驱动器维修「安川|三菱|松下」伺服维修公司-深圳华创益 | 软启动器-上海能曼电气有限公司 真空搅拌机-行星搅拌机-双行星动力混合机-广州市番禺区源创化工设备厂 | 合肥地磅_合肥数控切割机_安徽地磅厂家_合肥世佳电工设备有限公司 | 防勒索软件_数据防泄密_Trellix(原McAfee)核心代理商_Trellix(原Fireeye)售后-广州文智信息科技有限公司 | IHDW_TOSOKU_NEMICON_EHDW系列电子手轮,HC1系列电子手轮-上海莆林电子设备有限公司 | 有机废气处理-rto焚烧炉-催化燃烧设备-VOC冷凝回收装置-三梯环境 | 活性氧化铝球|氧化铝干燥剂|分子筛干燥剂|氢氧化铝粉-淄博同心材料有限公司 | 武汉印刷厂-不干胶标签印刷厂-武汉不干胶印刷-武汉标签印刷厂-武汉标签制作 - 善进特种标签印刷厂 | 纯水电导率测定仪-万用气体检测仪-低钠测定仪-米沃奇科技(北京)有限公司www.milwaukeeinst.cn 锂辉石检测仪器,水泥成分快速分析仪-湘潭宇科分析仪器有限公司 手术室净化装修-手术室净化工程公司-华锐手术室净化厂家 | 搪玻璃冷凝器_厂家-越宏化工设备 | 二手电脑回收_二手打印机回收_二手复印机回_硒鼓墨盒回收-广州益美二手电脑回收公司 | 生鲜配送系统-蔬菜食材配送管理系统-连锁餐饮订货配送软件-挪挪生鲜供应链管理软件 | 深圳侦探联系方式_深圳小三调查取证公司_深圳小三分离机构 | 【甲方装饰】合肥工装公司-合肥装修设计公司,专业从事安徽办公室、店面、售楼部、餐饮店、厂房装修设计服务 | 蓝牙音频分析仪-多功能-四通道-八通道音频分析仪-东莞市奥普新音频技术有限公司 | 铝箔-铝板-花纹铝板-铝型材-铝棒管-上海百亚金属材料有限公司 | 商秀—企业短视频代运营_抖音企业号托管 | 自动记录数据电子台秤,记忆储存重量电子桌称,设定时间记录电子秤-昆山巨天 | 农产品溯源系统_农产品质量安全追溯系统_溯源系统 | 地图标注|微信高德百度地图标注|地图标记-做地图[ZuoMap.com] | 上海办公室装修公司_办公室设计_直营办公装修-羚志悦装 | YT保温材料_YT无机保温砂浆_外墙保温材料_南阳银通节能建材高新技术开发有限公司 | 真空搅拌机-行星搅拌机-双行星动力混合机-广州市番禺区源创化工设备厂 | 电位器_轻触开关_USB连接器_广东精密龙电子科技有限公司 | 深圳激光打标机_激光打标机_激光焊接机_激光切割机_同体激光打标机-深圳市创想激光科技有限公司 深圳快餐店设计-餐饮设计公司-餐饮空间品牌全案设计-深圳市勤蜂装饰工程 |