精华内容
下载资源
问答
  • Alluxio文件操作Java API示例

    千次阅读 2016-03-21 17:19:50
    Alluxio文件操作Java API示例

            

            一、写文件

    		// 获取文件系统客户端FileSystem实例
    		FileSystem fs = FileSystem.Factory.get();
    		
    		// 构造Alluxio路径AlluxioURI实例
    		AlluxioURI path = new AlluxioURI("/myFile");
    		
    		// 设置一些操作选项
    		// 设置文件块大小为128M
    		CreateFileOptions options = CreateFileOptions.defaults().setBlockSize(128 * Constants.MB);
    		
    		// 创建一个文件并获取它的文件输出流FileOutStream实例
    		FileOutStream out = fs.createFile(path);
    		
    		// 调用文件输出流FileOutStream实例的write()方法写入数据
    		out.write(...);
    		
    		// 关闭文件输出流FileOutStream实例,结束写文件操作
    		out.close();

            二、读文件

    		// 获取文件系统客户端FileSystem实例
    		FileSystem fs = FileSystem.Factory.get();
    				
    		// 构造Alluxio路径AlluxioURI实例
    		AlluxioURI path = new AlluxioURI("/myFile");
    				
    		// 打开一个文件,获得文件输入流FileInStream(同时获得一个锁以防止文件被删除)
    		FileInStream in = fs.openFile(path);
    		
    		// 调用文件输入流FileInStream实例的read()方法读数据
    		in.read(...);
    		
    		// 关闭文件输入流FileInStream实例,结束读文件操作(同时释放锁)
    		in.close();


            


    展开全文
  • Hadoop HDFS文件操作 Java实现类

    千次阅读 2013-07-17 17:31:29
    import java.io.IOException; import org.apache.hadoop.conf.Configuration; import org.apache.hadoop.fs.FileSystem; import org.apache.hadoop.fs.Path; public class MakeDir { public static vo

    1、创建HDFS目录

    import java.io.IOException;
    import org.apache.hadoop.conf.Configuration;
    import org.apache.hadoop.fs.FileSystem;
    import org.apache.hadoop.fs.Path;
    
    public class MakeDir {
    	public static void main(String[] args) throws IOException {
    		Configuration conf = new Configuration();
    		FileSystem fs = FileSystem.get(conf);
    		Path path = new Path("/user/hadoop/data/20130709");
    		fs.create(path);
    		fs.close();
    	}
    }

    2、删除HDFS目录

    import java.io.IOException;
    import org.apache.hadoop.conf.Configuration;
    import org.apache.hadoop.fs.FileSystem;
    import org.apache.hadoop.fs.Path;
    
    public class DeleteDir {
    	public static void main(String[] args) throws IOException {
    		Configuration conf = new Configuration();
    		FileSystem fs = FileSystem.get(conf);
    		
    		Path path = new Path("/user/hadoop/data/20130710");
    		fs.delete(path);
    		fs.close();
    	}
    }

    3、HDFS写文件

    import java.io.IOException;
    import org.apache.hadoop.conf.Configuration;
    import org.apache.hadoop.fs.FSDataOutputStream;
    import org.apache.hadoop.fs.FileSystem;
    import org.apache.hadoop.fs.Path;
    
    public class WriteFile {
    	public static void main(String[] args) throws IOException {
    		Configuration conf = new Configuration();
    		FileSystem fs = FileSystem.get(conf);
    		Path path = new Path("/user/hadoop/data/write.txt");
    		FSDataOutputStream out = fs.create(path);
    		out.writeUTF("da jia hao,cai shi zhen de hao!");
    		fs.close();
    	}
    }
    4、HDFS读文件

    import java.io.IOException;
    import org.apache.hadoop.conf.Configuration;
    import org.apache.hadoop.fs.FSDataInputStream;
    import org.apache.hadoop.fs.FileStatus;
    import org.apache.hadoop.fs.FileSystem;
    import org.apache.hadoop.fs.Path;
    
    public class ReadFile {
    	public static void main(String[] args) throws IOException {
    		Configuration conf = new Configuration();
    		FileSystem fs = FileSystem.get(conf);
    		Path path = new Path("/user/hadoop/data/write.txt");
    		
    		if(fs.exists(path)){
    			FSDataInputStream is = fs.open(path);
    			FileStatus status = fs.getFileStatus(path);
    			byte[] buffer = new byte[Integer.parseInt(String.valueOf(status.getLen()))];
    			is.readFully(0, buffer);
    			is.close();
                fs.close();
                System.out.println(buffer.toString());
    		}
    	}
    }

    5、上传本地文件到HDFS
    import java.io.IOException;
    import org.apache.hadoop.conf.Configuration;
    import org.apache.hadoop.fs.FileSystem;
    import org.apache.hadoop.fs.Path;
    
    public class CopyFromLocalFile {
    
    	public static void main(String[] args) throws IOException {
    		
    		Configuration conf = new Configuration();
    		FileSystem fs = FileSystem.get(conf);
    		Path src = new Path("/home/hadoop/word.txt");
    		Path dst = new Path("/user/hadoop/data/");
    		fs.copyFromLocalFile(src, dst);
    		fs.close();
    	}
    }

    6、删除文件

    import java.io.IOException;
    import org.apache.hadoop.conf.Configuration;
    import org.apache.hadoop.fs.FileSystem;
    import org.apache.hadoop.fs.Path;
    
    public class DeleteFile {
    
    	public static void main(String[] args) throws IOException {
    		Configuration conf = new Configuration();
    		FileSystem fs = FileSystem.get(conf);
    		
    		Path path = new Path("/user/hadoop/data/word.txt");
    		fs.delete(path);
    		fs.close();
    	}
    }
    7、获取给定目录下的所有子目录以及子文件

    import java.io.IOException;
    import org.apache.hadoop.conf.Configuration;
    import org.apache.hadoop.fs.FileStatus;
    import org.apache.hadoop.fs.FileSystem;
    import org.apache.hadoop.fs.Path;
    
    public class GetAllChildFile {
    	static Configuration conf = new Configuration();
    	
    	
    	public static void main(String[] args)throws IOException {
    		FileSystem fs = FileSystem.get(conf);
    		Path path = new Path("/user/hadoop");
    		getFile(path,fs);
    		//fs.close();
    	}
    	
    	public static void getFile(Path path,FileSystem fs) throws IOException {
    		
    		FileStatus[] fileStatus = fs.listStatus(path);
    		for(int i=0;i<fileStatus.length;i++){
    			if(fileStatus[i].isDir()){
    				Path p = new Path(fileStatus[i].getPath().toString());
    				getFile(p,fs);
    			}else{
    				System.out.println(fileStatus[i].getPath().toString());
    			}
    		}
    	}
    
    }
    8、查找某个文件在HDFS集群的位置

    package com.hadoop.file;
    
    import java.io.IOException;
    import org.apache.hadoop.conf.Configuration;
    import org.apache.hadoop.fs.BlockLocation;
    import org.apache.hadoop.fs.FileStatus;
    import org.apache.hadoop.fs.FileSystem;
    import org.apache.hadoop.fs.Path;
    import org.apache.hadoop.hdfs.DistributedFileSystem;
    import org.apache.hadoop.hdfs.protocol.DatanodeInfo;
    
    public class FindFile {
    	
    	public static void main(String[] args) throws IOException {	
    		getHDFSNode();
    	}
    	
    	/**
    	 * HDFS集群上所有节点名称信息
    	 * @Title:  
    	 * @Description: 
    	 * @param 
    	 * @return 
    	 * @throws
    	 */
    	public static void getHDFSNode() throws IOException{
    		Configuration conf = new Configuration();
    		FileSystem fs = FileSystem.get(conf);
    
    		DistributedFileSystem  dfs = (DistributedFileSystem)fs;
    		DatanodeInfo[] dataNodeStats = dfs.getDataNodeStats();
    		
    		for(int i=0;i<dataNodeStats.length;i++){
    			System.out.println("DataNode_" + i + "_Node:" + dataNodeStats[i].getHostName());
    		}
    		
    	}
    }
    9、HDFS集群上所有节点名称信息

    package com.hadoop.file;
    import java.io.IOException;
    import org.apache.hadoop.conf.Configuration;
    import org.apache.hadoop.fs.BlockLocation;
    import org.apache.hadoop.fs.FileStatus;
    import org.apache.hadoop.fs.FileSystem;
    import org.apache.hadoop.fs.Path;
    import org.apache.hadoop.hdfs.DistributedFileSystem;
    import org.apache.hadoop.hdfs.protocol.DatanodeInfo;
    
    public class FindFile {
    	
    	public static void main(String[] args) throws IOException {	
    		getHDFSNode();
    	}
    	
    	/**
    	 * HDFS集群上所有节点名称信息
    	 * @Title:  
    	 * @Description: 
    	 * @param 
    	 * @return 
    	 * @throws
    	 */
    	public static void getHDFSNode() throws IOException{
    		Configuration conf = new Configuration();
    		FileSystem fs = FileSystem.get(conf);
    
    		DistributedFileSystem  dfs = (DistributedFileSystem)fs;
    		DatanodeInfo[] dataNodeStats = dfs.getDataNodeStats();
    		
    		for(int i=0;i<dataNodeStats.length;i++){
    			System.out.println("DataNode_" + i + "_Node:" + dataNodeStats[i].getHostName());
    		}		
    	}		
    }







    展开全文
  • Java文件操作

    万次阅读 多人点赞 2018-06-13 15:37:04
    Java文件操作 1、简介 Java中的File类给我们提供了文件操作的基础,本博客讲解的内容是工程训练任务2.1中的一些程序,对于写入操作在上一篇博客中已经有所涉及,故本博客只展示任务挑战中的三个小程序。 2、...

    Java文件操作

    1、简介

    Java中的File类给我们提供了文件操作的基础,本博客讲解的内容是工程训练任务2.1中的一些程序,对于写入操作在上一篇博客中已经有所涉及,故本博客只展示任务挑战中的三个小程序。


    2、基本任务和代码

    (1)挑战任务1

    1)任务内容
    编写一个Java程序对文本文件按行进行读取,每读取一行后显示此行,并统计此行有多少字节,有多少字符并显示统计结果,最后显示总的行数。

    2)任务代码
    代码每一行均有注释,代码如下:

    import java.io.BufferedReader;//导入java.io包下的BufferedReader类
    import java.io.FileReader;//导入java.io包下的FileReader类
    import java.io.IOException;//导入java.io包下的IOException类
    public class TEST1{//类名
        public static void main(String[] args){//程序主入口函数,带命令行参数
            try {//try代码块,当发生异常时会转到catch代码块中
                //读取指定的文件
                BufferedReader in = new BufferedReader(new FileReader("D:\\CSDN博客展示\\文件存放处\\Test1.txt"));
                String str=null;//定义一个字符串类型变量str
                int i=0;//定义一个整型变量
                while ((str = in.readLine())!= null) {//readLine()方法, 用于读取一行,只要读取内容不为空就一直执行
                    i++;
                    byte[] bytes=str.getBytes();//获得字节数
                    System.out.print("第"+i+"行:"+str+"    ");//输出从每一行读取的内容
                    System.out.println("第"+i+"行有"+bytes.length+"个字节"+str.length()+"个字符");//输出每一行的字符和字节个数
                }
                System.out.println("该文本共有"+i+"行");//输出总的行数
            } catch (IOException e) {//当try代码块有异常时转到catch代码块
                e.printStackTrace();//printStackTrace()方法是打印异常信息在程序中出错的位置及原因
            }
        }
    }

    3)运行结果
    这里写图片描述

    (2)挑战任务2

    1)任务内容
    编写一个Java程序通过二进制流的方式实现对任何类型文件的复制操作。
    我的思路如下:首先文件Test2.txt在路径“D:\CSDN博客展示\文件存放处”中,然后通过程序将该文件复制到路径“D:\CSDN博客展示\文件复制处”里面。

    2)任务代码
    代码每一行均有注释,代码如下:

    import java.io.File;//导入java.io包下的File类
    import java.io.FileInputStream;//导入java.io包下的FileInputStream类
    import java.io.FileOutputStream;//导入java.io包下的FileOutputStream类
    import java.io.IOException;//导入java.io包下的IOException类
    public class TEST2{//类名
        public static void main(String[] args) throws IOException{//程序主入口函数,带命令行参数
            //封装好需要复制的文件原路径
           FileInputStream fis=new FileInputStream("D:\\CSDN博客展示\\文件存放处\\Test2.txt");
           //将文件复制到指定路径下
           FileOutputStream fos=new FileOutputStream("D:\\CSDN博客展示\\文件复制处\\Test2.txt");
           byte[] lsy=new byte[fis.available()];//定义字节数组用来当作缓冲区
           fis.read(lsy);//将文件以字节流形式读入缓冲区字节数组
           fos.write(lsy);//从缓冲区字节数组中以字节流形式取出
           fos.close();//关闭读取流
           fis.close();//关闭写入流
           File file=new File("D:\\CSDN博客展示\\文件复制处\\Test2.txt");//创建文件对象
            if(file.exists()){//if语句的条件,调用exists方法判断文件是否存在
                 System.out.println("文件成功复制到指定路径下");//若文件存在,则输出文件存在
            }
            else{//否则
                 System.out.println("文件复制失败");//输出文件不存在
            }
        }
    }

    3)运行结果
    这里写图片描述

    (3)挑战任务3

    1)任务内容
    编写一个Java程序通过二进制流的方式实现对任何类型文件的移动操作。
    我的思路如下:首先文件Test3.txt在路径“D:\CSDN博客展示\文件存放处”中,然后通过程序将该文件移动到路径“D:\CSDN博客展示\文件移动处”里面。

    2)任务代码
    代码每一行均有注释,代码如下:

    import java.io.File;//导入java.io包下的File类
    import java.io.FileInputStream;//导入java.io包下的FileInputStream类
    import java.io.FileOutputStream;//导入java.io包下的FileOutputStream类
    import java.io.IOException;//导入java.io包下的IOException类
    public class TEST3{//类名
        public static void main(String[] args) throws IOException{//程序主入口函数,带命令行参数
            //封装好需要移动的文件源路径
           File file1=new File("D:\\CSDN博客展示\\文件存放处\\Test3.txt");
           FileInputStream fis=new FileInputStream(file1);
           //将文件移动到指定路径下
           FileOutputStream fos=new FileOutputStream("D:\\CSDN博客展示\\文件移动处\\Test3.txt");
           byte[] lsy=new byte[fis.available()];//定义字节数组用来当作缓冲区
           fis.read(lsy);//将文件以字节流形式读入缓冲区字节数组
           fos.write(lsy);//从缓冲区字节数组中以字节流形式取出
           fos.close();//关闭读取流
           fis.close();//关闭写入流
           file1.delete();//删除源文件
           File file2=new File("D:\\CSDN博客展示\\文件移动处\\Test3.txt");//创建文件对象
            if(file2.exists()){//if语句的条件,调用exists方法判断文件是否存在
                 System.out.println("文件成功移动到指定路径下");//若文件存在,则输出文件存在
            }
            else{//否则
                 System.out.println("文件移动失败");//输出文件不存在
            }
        }
    }

    3)运行结果
    这里写图片描述


    3、总结

    本博客分享了文件的读取、复制和移动的方法,并且复制和移动不仅仅局限于txt文件,大家可以使用其他类型的文件进行实验,由于这些程序是我在四月份做工程训练任务2.1时所做,故会有一些不足之处,请多多包涵。

    展开全文
  • Java-文件操作与随机访问文件

    千次阅读 2015-11-29 12:40:29
    实验介绍本实验将学习java.io 包下的文件操作和随机访问的相关知识一、文件操作 java.io 定义的大多数类都是流式操作,但 File 类不是。它直接处理文件和文件系统。File类没有指定信息怎样从文件读取或向文件存储;...

    文件操作与随机访问文件


    转载自:https://www.shiyanlou.com/courses/document/1123


    实验介绍

    本实验将学习java.io 包下的文件操作和随机访问的相关知识

    一、文件操作

      java.io 定义的大多数类都是流式操作,但 File 类不是。它直接处理文件和文件系统。File类没有指定信息怎样从文件读取或向文件存储;它描述了文件本身的属性。File 对象用来获取或处理与磁盘文件相关的信息,例如权限,时间,日期和目录路径。此外,File还浏览子目录层次结构。Java 中的目录当成 File 对待,它具有附加的属性——一个可以被 list( )方法检测的文件名列表。

    先看一看 File 的构造函数:

    //根据 parent 抽象路径名和 child 路径名字符串创建一个新 File 实例。 
    File(File parent, String child) 
    
    //通过将给定路径名字符串转换为抽象路径名来创建一个新 File 实例       
    File(String pathname) 
    
    // 根据 parent 路径名字符串和 child 路径名字符串创建一个新 File 实例
    File(String parent, String child) 
    
    //通过将给定的 file: URI 转换为一个抽象路径名来创建一个新的 File 实例
    File(URI uri) 

    例如:

    //一个目录路径参数
    File f1 = new File('/Users/mumutongxue/');
    
    //对象有两个参数——路径和文件名
    File f2 = new File('/Users/mumutongxue/','a.bat');
    
    //指向f1文件的路径及文件名
    File f3 = new File(f1,'a.bat');
    方法 说明
    boolean canExecute() 测试应用程序是否可以执行此抽象路径名表示的文件
    boolean canRead() 测试应用程序是否可以读取此抽象路径名表示的文件
    boolean canWrite() 测试应用程序是否可以修改此抽象路径名表示的文件
    int compareTo(File pathname) 按字母顺序比较两个抽象路径名
    boolean createNewFile() 当且仅当不存在具有此抽象路径名指定名称的文件时,不可分地创建一个新的空文件
    static File createTempFile(String prefix, String suffix) 在默认临时文件目录中创建一个空文件,使用给定前缀和后缀生成其名称
    static File createTempFile(String prefix, String suffix, File directory) 在指定目录中创建一个新的空文件,使用给定的前缀和后缀字符串生成其名称
    boolean delete() 删除此抽象路径名表示的文件或目录
    void deleteOnExit() 在虚拟机终止时,请求删除此抽象路径名表示的文件或目录
    boolean equals(Object obj) 测试此抽象路径名与给定对象是否相等
    boolean exists() 测试此抽象路径名表示的文件或目录是否存在
    File getAbsoluteFile() 返回此抽象路径名的绝对路径名形式
    String getAbsolutePath() 返回此抽象路径名的绝对路径名字符串
    File getCanonicalFile() 返回此抽象路径名的规范形式
    String getCanonicalPath() 返回此抽象路径名的规范路径名字符串
    long getFreeSpace() 返回此抽象路径名指定的分区中未分配的字节数
    String getName() 返回由此抽象路径名表示的文件或目录的名称
    String getParent() 返回此抽象路径名父目录的路径名字符串;如果此路径名没有指定父目录,则返回 null
    File getParentFile() 返回此抽象路径名父目录的抽象路径名;如果此路径名没有指定父目录,则返回 null
    String getPath() 将此抽象路径名转换为一个路径名字符串
    long getTotalSpace() 返回此抽象路径名指定的分区大小
    long getUsableSpace() 返回此抽象路径名指定的分区上可用于此虚拟机的字节数
    int hashCode() 计算此抽象路径名的哈希码
    boolean isAbsolute() 测试此抽象路径名是否为绝对路径名
    boolean isDirectory() 测试此抽象路径名表示的文件是否是一个目录
    boolean isFile() 测试此抽象路径名表示的文件是否是一个标准文件
    boolean isHidden() 测试此抽象路径名指定的文件是否是一个隐藏文件
    long lastModified() 返回此抽象路径名表示的文件最后一次被修改的时间
    long length() 返回由此抽象路径名表示的文件的长度
    String[] list() 返回一个字符串数组,这些字符串指定此抽象路径名表示的目录中的文件和目录
    String[] list(FilenameFilter filter) 返回一个字符串数组,这些字符串指定此抽象路径名表示的目录中满足指定过滤器的文件和目录
    File[] listFiles() 返回一个抽象路径名数组,这些路径名表示此抽象路径名表示的目录中的文件
    File[] listFiles(FileFilter filter) 返回抽象路径名数组,这些路径名表示此抽象路径名表示的目录中满足指定过滤器的文件和目录
    File[] listFiles(FilenameFilter filter) 返回抽象路径名数组,这些路径名表示此抽象路径名表示的目录中满足指定过滤器的文件和目录
    static File[] listRoots() 列出可用的文件系统根
    boolean mkdir() 创建此抽象路径名指定的目录
    boolean mkdirs() 创建此抽象路径名指定的目录,包括所有必需但不存在的父目录
    boolean renameTo(File dest) 重新命名此抽象路径名表示的文件
    boolean setExecutable(boolean executable) 设置此抽象路径名所有者执行权限的一个便捷方法
    boolean setExecutable(boolean executable, boolean ownerOnly) 设置此抽象路径名的所有者或所有用户的执行权限
    boolean setLastModified(long time) 设置此抽象路径名指定的文件或目录的最后一次修改时间
    boolean setReadable(boolean readable) 设置此抽象路径名所有者读权限的一个便捷方法
    boolean setReadable(boolean readable, boolean ownerOnly) 设置此抽象路径名的所有者或所有用户的读权限
    boolean setReadOnly() 标记此抽象路径名指定的文件或目录,从而只能对其进行读操作
    boolean setWritable(boolean writable) 设置此抽象路径名所有者写权限的一个便捷方法
    boolean setWritable(boolean writable, boolean ownerOnly) 设置此抽象路径名的所有者或所有用户的写权限
    String toString() 返回此抽象路径名的路径名字符串
    URI toURI() 构造一个表示此抽象路径名的 file: URI
    URL toURL() 已过时。 此方法不会自动转义 URL 中的非法字符。建议新的代码使用以下方式将抽象路径名转换为 URL:首先通过 toURI 方法将其转换为 URI,然后通过 URI.toURL 方法将 URI 装换为 URL

    看一看相关的代码吧:

    package com.shiyanlou;
    
    import java.io.File;
    import java.io.IOException;
    
    public class  FileDemo {
        public static void main(String[] args){
            //这是我电脑上的路径,同学们可以直接在桌上生成文件。桌面路径为'/root/Desktop'
            //构造函数File(String pathname)
            File f1 =new
            File('/Users/mumutongxue/1.txt');
            //File(String parent,String child)
            File f2 =new File('/Users/mumutongxue','2.txt');
            //separator 跨平台分隔符
            File f3 =new File('/Users'+File.separator+'mumutongxue');
            File f4 =new File(f3,'3.txt');
    
            try {
                System.out.println(f1);
                    //当文件存在时返回 false;不存在时返回 true
                    System.out.println(f2.createNewFile());
                    //当文件不存在时返回 false
                    System.out.println(f3.delete());
            }catch(IOException e) {
                    e.printStackTrace();
            }
    
            //列出磁盘下的文件和文件夹
            File[] files =File.listRoots();
            for(File file:files){
                System.out.println(file);
                if(file.length()>0){
                    String[] filenames =file.list();
                    for(String filename:filenames){
                        System.out.println(filename);
                    }
                }
            }
    
        }
    
    }

    二、随机访问文件

      对于 FileInputStream/FileOutputStream、FileReader/FileWriter 来说,它们的实例都是顺序访问流,即只能进行顺序读/写。而类 RandomAccessFile 则允许文件内容同时完成读和写操作,它直接继承 object,并且同时实现了接口 DataInput 和 DataOutput,提供了支持随机文件操作的方法:

    1. readXXX()或者 writeXXX():如 ReadInt(),ReadLine(),WriteChar(),WriteDouble()等
    2. int skipBytes(int n):将指针向下移动若干字节
    3. length():返回文件长度
    4. long getFilePointer():返回指针当前位置
    5. void seek(long pos):将指针调用所需位置

        在生成一个随机文件对象时,除了要指明文件对象和文件名之外,还需要指明访问文件的模式。

    我们来看看 RandomAccessFile 的构造函数:

    RandomAccessFile(File file,String mode)
    RandomAccessFile(String name,String mode)

    mode 的取值:
    * r只读,任何写操作都讲抛出 IOException
    * rw读写,文件不存在时会创建该文件,文件存在是,原文件内容不变,通过写操作改变文件内容。
    * rws同步读写,等同于读写,但是任何写操作的内容都被直接写入物理文件,包括文件内容和文件属性
    * rwd数据同步读写,等同于读写,但任何内容写操作都直接写到物理文件,但对文件属性内容的修改不是这样

    看看代码吧:

    package com.shiyanlou;
    
    
    import java.io.IOException;
    import java.io.RandomAccessFile;
    
    public class  FileDemo {
        public static void main(String[] args){
    
                int data_arr[] = {12, 32, 43, 45, 1, 5};
                try {
                    RandomAccessFile randf=new RandomAccessFile('temp.dat','rw');
                    for(int i = 0; i < data_arr.length; i++){
                        randf.writeInt(data_arr[i]);
                    }
                    for(int i = data_arr.length-1 ; i >= 0; i--){
                        //int 数据占4个字节
                        randf.seek(i * 4L);
                        System.out.println(randf.readInt());
                    }
                    randf.close();
                }catch(IOException e){
                    System.out.println('File access error' + e);
                }
        }
    }

    三、小结

      在 java 中有数据传输的地方都用到 I/O 流(通常是文件、网络、内存和标准输入输出等)

      InputStream 和 OutputStream 是所有字节流的祖先(只有 RandAccessFile 类是一个列外),read 和 write 是它们最基本的方法,读写单位是字节

      Reader 和 Writer 是所有字符流的祖先,read 和 write 是它们最基本的方法,读写单位是字符。

      在众多的流对象中,并不是每一种都单独使用,其中过滤流的子类在数据送出去之前做必要的处理。

    展开全文
  • java 文件操作

    千次阅读 2018-10-03 23:30:38
    java 文件操作 一、相关知识学习 1、 获取文件的属性信息 boolean exists():判断文件或目录是否存在 String getName():返回文件或目录的名称 String getParent():返回父路径的路径名字符串 String ...
  • Java 文件操作

    千次阅读 2015-09-28 23:28:40
    打开文件首先实例化JFileChoosers,可以用FileNameExtensionFilter来设置过滤器,showOpenDialog方法的返回值是int类型,因此定义一个value,最后如果value等于JFileChooser.APPROVE_OPTION就可以对文件进行操作,...
  • java文件操作

    千次阅读 2018-02-02 21:59:14
    1.字节流 1.1 什么是字节流 计算机中都是二进制数据,一个字节是8个2进制位.字节可以表示所有的数据,比如文本,音频,视频.图片,都是作为字节存在的....在文本文件中存储的数据是以我们能读...例如,Java的源程序(.java
  • JAVA 文件操作

    万次阅读 多人点赞 2013-10-06 20:24:09
    平常经常使用JAVA对文件进行读写等操作,这里汇总一下常用的文件操作。 1、创建文件 public static boolean createFile(String filePath){ boolean result = false; File file = new File(filePath); if...
  • java IO 文件操作

    千次阅读 2011-08-11 13:41:23
    java 文件操作  java文件操作的类是 File类 可以实现对文件的创建删除 修改等 File类 在 java.io包中  下面是 通过 java.io.File类实现对文件操作 File类没有提供对文件的读写方法 */ im
  • Java文件读写操作

    千次阅读 2017-08-14 09:45:54
    Java文件读写操作
  • java 操作文件权限

    千次阅读 2019-01-15 14:42:23
    java 操作文件权限java 操作文件权限代码 java 操作文件权限 java 生成linux下的文件,有时候需要添加权限。比如755权限 代码 File directory = file.getParentFile(); FileUtils.forceMkdir(directory); ...
  • JAVA文件IO操作

    万次阅读 2019-09-06 22:44:41
    Java提供了I/O操作可以将数据保存到多种类型的文件当中(当然每种特定格式的文件有其独特的构造方式和存取方式),本篇笔记将带你了解操作各种类型文件都具有的共同部分,了解了这些共同之处,就算遇到鲜有接触的...
  • Java File文件操作

    万次阅读 多人点赞 2016-05-21 20:35:57
    Java提供File类,让我们对文件进行操作,简单整理了一下File类的用法。 1.基本概念File:文件和目录路径名的抽象表示形式,代表文件或者文件夹。 2.构造方法 // 根据parent抽象路径名和child路径名字符串创建一个新...
  • Java文件写入操作

    千次阅读 2019-07-02 14:35:30
    package demo1; import java.io.File; import java.io.FileOutputStream; import java.io.FilenameFilter; import java.io.IOException;...import java.util.Arrays;...import java.util....//文件夹操作 public c...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 67,656
精华内容 27,062
关键字:

文件操作java

java 订阅