国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

IO

2019-11-09 17:04:35
字體:
來源:轉載
供稿:網友

IO

編碼

public class EncodeDemo { public static void main(String[] args) { String s = "慕課ABC"; // 轉換成字節序列用的是項目默認的編碼 //byte[] bytes1 = s.getBytes(); byte[] bytes1; try { // 以指定編碼方式轉換 bytes1 = s.getBytes("gbk"); for (byte b : bytes1) { // 把字節(轉換成了int)以16進制的方式顯示 System.out.java是雙字節編碼utf-16be */ byte[] bytes4 = null ; try { bytes4= s.getBytes("utf-16be"); for (byte b : bytes4) { System.out.print(Integer.toHexString(b&0xff)+" "); } System.out.println(); } catch (Exception e) { } /** * 當你的字節序列是某種編碼時,這時候想把字節序列轉換成 * 字符串,也需要使用這種編碼方式,否則會出現亂碼 */ String str1 = new String(bytes4); // 用項目默認的編碼 System.out.println(str1); try { String str2 = new String(bytes4,"utf-16be"); System.out.println(str2); } catch (Exception e) { } /** * 文本文件 就是字節序列 * 可以是任意編碼的字節序列 * 如果我們在中文機器上直接創建文本文件 * 那么該文件只識別ANSI編碼 */ }}

這里寫圖片描述

File基本API

public class FileDemo1 { public static void main(String[] args) { /** * java.io.File類用于表示文件(目錄) * File類只用于表示文件(目錄)的信息 * 不能用于文件內容的訪問 */ String path = "D://javaio"; File file = new File(path); System.out.println("文件(目錄)是否存在: "+file.exists()); if(!file.exists()){ // 創建多級目錄 file.mkdirs(); } System.out.println("是否是一個目錄: "+file.isDirectory()); System.out.println("是否是文件: "+ file.isFile()); File file2 = new File("D://javaio//日記1.txt"); if(!file2.exists()){ try { // 不存在則創建 file2.createNewFile(); } catch (IOException e) { } } else { System.out.println("file2文件已存在"); } File file3 = new File("D://javaio","日記2.txt"); if(!file3.exists()){ try { // 不存在則創建 file3.createNewFile(); } catch (IOException e) { } } else { System.out.println("file3文件已存在"); } System.out.println(file3); // D:/javaio/日記2.txt System.out.println(file3.getAbsolutePath()); // D:/javaio/日記2.txt System.out.println(file3.getName()); // 日記2.txt System.out.println(file3.getParent()); // D:/javaio System.out.println(file3.getParentFile()); // D:/javaio System.out.println(file3.getParentFile().getAbsolutePath()); // D:/javaio }}

這里寫圖片描述

遍歷所有的文件和目錄

/** * 列出指定目錄下(包括其子目錄)的所有文件 * @param dir */ public static void listDirectory(File dir){ if(!dir.exists()){ System.out.println("目錄不存在"); return; } if(!dir.isDirectory()){ System.out.println("不是目錄"); return; } // 返回的是字符串數據 不包含子目錄下的內容// String[] filenames = dir.list();// for (String string : filenames) {// System.out.println(dir+"http://"+string);// } // 如果要遍歷子目錄下的內容就需要構造稱File對象做遞歸 File[] files = dir.listFiles(); // 直接返回的是直接子目錄的抽象 if(files!=null&&files.length>0) for (File file : files) { // System.out.println(file); if(file.isDirectory()){ // 遞歸 listDirectory(file); } else { System.out.println(file); } } }

這里寫圖片描述

RandomaccessFile

public class FileDemo2 { public static void main(String[] args) { /** * RandomAccessFile java提供的對文件內容的訪問 * 既可以讀文件,也可以寫文件 * 支持隨機訪問文件,可以訪問文件的任意位置 * * java文件模型 * 在硬盤上的文件是byte存儲的,是數據的集合 * 打開文件 * 有兩種模式 rw(讀寫) r(只讀) * 文件指針 * 代開文件時指針在開頭 pointer = 0; * 寫方法 * write 只寫一個字節(后8位),同時指針指向下一個位置 * 準備再次寫入 * 讀方法 * read 讀一個字節 * 文件讀寫完成以后一定要關閉 * */ try { String mode = "rw"; File file = new File("d://javaio//test","日記1.txt"); File parentFile = file.getParentFile(); if(!parentFile.exists()){ parentFile.mkdirs(); } if(!file.exists()){ file.createNewFile(); } RandomAccessFile ra = new RandomAccessFile(file, mode); ra.write("abcd".getBytes("utf-8")); long filePointer = ra.getFilePointer(); // 獲取指針位置0開始 System.out.println("當前位置:"+filePointer); ra.seek(0); // 把指針移到開始i位置 // 一次性讀取,把文件中的內容都讀到字節數組中 byte[] buf = new byte[(int)ra.length()]; // 講內容讀到字節數組中 ra.read(buf); System.out.println("讀取到的字符: "+new String(buf)); //abcd ra.close(); } catch (Exception e) { } }}

這里寫圖片描述


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 东乌| 鹤峰县| 富阳市| 阿拉善右旗| 沙坪坝区| 苍溪县| 东安县| 宁武县| 布尔津县| 墨竹工卡县| 武胜县| 寿光市| 静宁县| 汤原县| 汉源县| 武汉市| 铁力市| 满洲里市| 扬州市| 神池县| 霍城县| 天台县| 辛集市| 石门县| 崇明县| 湄潭县| 额尔古纳市| 阜南县| 淮南市| 太康县| 海盐县| 河曲县| 阳曲县| 宝丰县| 临湘市| 平湖市| 宁津县| 湘潭市| 东阿县| 聂拉木县| 大安市|