Input指从外部读入数据到内存,例如,把文件从磁盘读取到内存,从网络读取数据到内存等等。 Output指把数据从内存输出到外部,例如,把数据从内存写入到文件,把数据从内存输出到网络等等。...你可以想象它是一根水管,数据就像水一样, 起点—终点 可互相流动。 ? 1.1、流的特点: 先进先出:最先写入输出流的数据最先被输入流读取到。...字节流和字符流的其他区别: 字节流一般用来处理图像、视频、音频、PPT、Word等类型的文件。字符流一般用于处理纯文本类型的文件,如TXT文件等,但不能处理图像视频等非文本文件。...close() 和flush()的区别: 关close()是闭流对象,但是会先刷新一次缓冲区,关闭之后,流对象不可以继续再使用了,否则报空指针异常。...字符流一般用于处理纯文本类型的文件,如TXT文件等,但不能处理图像视频等非文本文件。 用一句话说就是:字节流可以处理一切文件,而字符流只能处理纯文本文件。 含有汉子的文件就使用字符流处理。
问题 最近遇到一个问题,使用Java写某个DSL标记语言X的parser(解析器)Maven插件的时候,对外暴露一个名为Callback的接口和一个待实现的方法getHTML()——基于调用处传入的文件名...srcX构造出HTML文件的输出路径(其实此处的Callback就是一个闭包,文件名是一个自由变量)。...String suffix) { return Joiner.on(".").join(filename, suffix); } //这里假设输入和输出根路径地址已知 private File...outputFile.getParentFile().mkdirs(); //创建可能不存在的父级目录 return outputFile; } 似乎这段程序可以正常工作了,但是创建文件夹这样的操作是可能失败的...所以我们需要关注是否创建成功,若失败,则写入Log文件当中。
BufferedWriter提供了write()方法,它可以将字符串写入到缓冲区,并在适当的时候刷新缓冲区以将数据写入文件。...这对于将内存中的字符数据写入文件或从内存中读取字符数据非常有用。...它逐行读取源文件并逐行写入目标文件,确保保留了源文件的格式和换行符。 11....使用FileReader和FileWriter 如果您需要以字符流的形式读取或写入文件,可以使用FileReader和FileWriter,它们不带缓冲区,适合处理较小的文件。...处理IOException:缓冲字符流操作可能会引发IOException异常,因此要确保正确地处理异常,例如记录错误日志或向用户显示错误信息。
FileWriter可以帮助我们方便地创建、打开、写入并关闭文件。在使用FileWriter之前,我们需要确保文件已经存在,否则FileWriter会自动创建文件。...(fileName));} FileWriter类的构造方法接受一个字符串类型的文件名作为参数,并抛出一个IOException异常。...我们可以使用FileWriter实现以下功能:将字符串写入文件中将字符数组写入文件中将单个字符写入文件中以下是一个使用FileWriter的例子:import java.io....写入文件中。如下是上述案例执行结果:优缺点分析优点:FileWriter类提供了简单的API来向文件中写入字符。FileWriter可以处理大文件,因为它使用了缓冲区。...注意:这些构造方法可能会抛出IOException异常,因为文件I/O操作可能会失败。
如果达到文件末尾,返回-1 异常的处理:为了保证流资源一定可以执行关闭操作。...文件的输出 FileWriter 从内存(程序)到硬盘文件中 步骤: 创建流对象,建立数据存放文件 FileWriter fw = new FileWriter(new File("Test.txt")...并不会报异常。 File对应的硬盘中的文件如果不存在,在输出的过程中,会自动创建此文件。...如果流使用的构造器是:FileWriter(file,true) 不会对原有文件覆盖,而是在原有文件基础上追加内容。 读取文件时,必须保证文件存在,否则会报异常。...在进行反序列化时,JVM会把传来的字节流中的serialversionUID与本地相应实体类的serialversionUID进行比较,如果相同就认为是一致的,可以进行反序列化,否则就会出现序列化版本不一致的异常
java.io.FileWriter extends OutputStreamWriter extends Writer FileWriter:文件字符输出流 作用:把内存中字符数据写入到文件中 构造方法...FileWriter(String fileName) 根据给定的文件名构造一个 FileWriter 对象。...参数:写入数据的目的地 String fileName:文件的路径 File file:是一个文件 构造方法的作用: 1.会创建一个FileWriter对象 2.会根据构造方法中传递的文件/文件的路径,...创建文件 3.会把FileWriter对象指向创建好的文件 字符输出流的使用步骤(重点): 1.创建FileWriter对象,构造方法中绑定要写入数据的目的地 2.使用FileWriter中的方法write...,把数据写入到内存缓冲区中(字符转换为字节的过程) 3.使用FileWriter中的方法flush,把内存缓冲区中的数据,刷新到文件中 4.释放资源(会先把内存缓冲区中的数据刷新到文件中) */ public
与字节输出流不同,字符打印流专门用于输出字符数据,它可以将字符写入文件、控制台或其他输出目标,而不需要我们手动进行字符编码的工作。 字符打印流通常用于处理文本文件,如文本文档、配置文件、日志文件等。...static void main(String[] args) { try { // 创建文件输出流 FileWriter fileWriter...接下来,我们使用PrintWriter的println()方法来写入字符数据,并最后关闭PrintWriter。数据将被写入名为"output.txt"的文件中。...以下是一些重要的注意事项: 异常处理:字符打印流可能会抛出IOException,因此在使用时应该进行异常处理。...文件路径:在指定文件路径时要格外小心。确保您有足够的权限来创建文件或写入文件,否则会抛出权限相关的异常。
注:在创建 FileReader 对象时若引发 FileNotFoundException 异常,需要使用 try catch 语句捕获该异常。...FileWriter(File file,boolean append):在指定 File 对象的情况下构造一个 FileWriter 对象,如果 append 的值为 true,则将字节写入文件末尾,...而不是写入文件开始处。...FileWriter(String fileName):在指定文件名的情况下构造一个 FileWriter 对象。其中,fileName 表示要写入字符的文件名,表示的是完整路径。...FileWriter(String fileName,boolean append):在指定文件名以及要写入文件的位置的情况下构造 FileWriter 对象。
会覆盖 FileWriter fw = new FileWriter("Demo.txt");//抛异常 //调用Writer中的write方法,写入数据,但实际上数据写入的是暂时储存缓冲区中...假设该流已保存缓冲区中各种 write() 方法的全部字符,则马上将它们写入预期目标。...fw = new FileWriter("Demo.txt",true); //构造函数,中加个true能够实现对文件的续写 fw.write("你好"+LINE_SEPARATOR+"世界...fw = null; try { fw = new FileWriter("z:\\Demo.txt",true);//假设传入一个找不到的地址会抛出两个异常 //找不到文件异常...、空指针异常。
示例二:写入文本文件import java.io.File;import java.io.FileWriter;import java.io.BufferedWriter;import java.io.IOException...和BufferedWriter来写入文本文件的内容。...FileWriter用于创建文件输出流,BufferedWriter提高写入效率。...通过循环读取输入流中的数据,并将其写入输出流,实现文件的复制。...小结与建议异常处理: 在文件操作中,IO异常是不可避免的,因此要养成良好的异常处理习惯,及时捕获和处理可能发生的异常。资源释放: 在文件操作完成后,一定要关闭打开的流,释放相关资源,以避免内存泄漏。
FileReader类:用于读取字符文件的便捷类,可以按字符读取文件内容。 FileWriter类:用于写入字符文件的便捷类,可以按字符写入文件内容。...然后使用String的构造函数将字符数组转换为字符串,并在循环中处理文件内容。最后,关闭FileReader对象。 使用FileWriter类以字符方式写入文件内容。...首先创建一个FileWriter对象,并使用write()方法将字符串内容写入文件。最后,关闭FileWriter对象。 ...同样地,如果在写入文件的过程中发生了异常,我们通过catch块中的e.printStackTrace()方法打印异常信息。 ...读取文件时,我们使用FileReader和char型的buffer数组,通过循环读取并输出文件内容;写入文件时,我们使用FileWriter和write方法,将指定的字符串内容写入到指定的文件中。
FileWriter fw = new FileWriter("demo.txt"); //调用write方法,将字符串写入到流中。...{ fw = new FileWriter("demo.txt");//可能会有异常产生 fw.write("abcdefg"); } catch (IOException...FileWriter fw = new FileWriter("buf.txt"); //为了提高字符写入流效率。加入了缓冲技术。...static File[] listRoots() 列出可用的文件系统根。 boolean mkdir() 创建由此抽象路径名命名的目录。...boolean mkdirs() 创建由此抽象路径名命名的目录,包括任何必需但不存在的父目录。 boolean renameTo(File dest) 重命名由此抽象路径名表示的文件。
3、XML文档有且只有一个根元素 良好格式的XML文档必须有一个根元素,就是紧接着声明后面建立的第一个元素,其他元素都是这个根元素的子元素,根元素完全包括文档中其他所有的元素。...FileWriter fileWriter = new FileWriter("..../src/com/item/demo/Demo.xml"); //将输出流匹配到文件流中 XMLWriter xmlWriter = new XMLWriter(fileWriter,format...); // 设置是否转义,默认使用转义字符 xmlWriter.setEscapeText(false); //写入 xmlWriter.write(doc); //刷新关闭 xmlWriter.flush...,否则会报异常。
然后,使用 write() 方法将字符数据写入文件中。 需要注意的是,在使用字符输出流时,需要进行异常处理,并在写入完成后记得关闭字符输出流,以释放相关资源。...---- 二、字符输出到TXT 当使用 Java 字符输出流将字符数据写入到 txt 文件时,可以使用 FileWriter 类。...(); } } } 在上述示例中,我们使用了 FileWriter 来创建字符输出流,将要写入的文件名作为参数传递给构造函数。...然后,使用 write() 方法将字符数据写入文件中。 需要注意的是,在使用字符输出流时,需要进行异常处理,并在写入完成后记得关闭字符输出流,以释放相关资源。...写入文本文件:字符输出流常用于将文本数据写入到文本文件中。它可以按字符为单位写入数据,并处理Unicode字符和字符集的转换。这在处理日志文件、配置文件、生成报表等情况下特别有用。
有很多中操作XML文件的方法,这里介绍一下JDOM的使用方法和技巧。 JDOM下载地址 创建XML文档 XML文件是一种典型的树形文件,每个文档元素都是一个document元素的子节点。...1 因此我们可以通过先创建元素再将元素添加到父元素中,最后将顶层元素添加到根元素中。 2 创建完文档元素后,就可以把元素添加到document对象中,然后写入文件。...XMLOutputter.output(Document,FileWriter) 将Docuemnt写入到FileWriter文件流中 下面是主要的操作过程,写入文件的过程放到了saveXML中...); 6 7 // 创建文件输出流 8 FileWriter writer = new FileWriter("person.xml"); 9...// fm.setEncoding("GB2312"); 13 xmlopt.setFormat(fm); 14 15 // 将doc写入到指定的文件中
(String str):写入字符串; void write(String str, int off, int len): 写入字符串的某一部分; FileWriter:文件字符输出流; 作用:把内存中字符数据写入文件中...FileWriter 对象; 参数:写入数据目的; 构造方法的作用: 创建一个FileWriter对象; 根据构造方法中传递的文件/文件路径,创建文件; 会把FileWriter对象指向创建好的文件...; 字符输出流使用步骤: 创建FileWriter对象,构造方法中绑定要写入数据的目的地; 使用FileWriter的方法writer,把数据写入内存缓冲区中(字符转换为字节的过程); 使用FileWriter...",0,2); //从零开始 输入两个字符 fileWriter.write("你好"+"\n"+"世界"); fileWriter.close(); 异常处理(JDK7之前): FileWriter...(ex); System.out.println("写入文件失败,请重新尝试"); }finally { try { if (fileWriter!
static File[] listRoots() 列出可用的文件系统根。 long length() 返回由此抽象路径名表示的文件的长度。...常用方法: void write(int b): 向文件中写入一个字节。 void write(byte[] b): 向文件中写入一个字节数组。...void write(byte[] b, int beginindex, int len): 向文件中写入字节输入的一部分,。 void close(): 释放资源....FileWriter(String fileName) 根据给定的文件名构造一个 FileWriter 对象。...FileWriter(String fileName, boolean append) 根据给定的文件名以及指示是否附加写入数据的 boolean 值来构造 FileWriter
FileWriter FileWriter是用来写入字符文件的便捷类 FileOutputStream -> OutputStreamWriter public class FileWriter extends...-> java.io.FileWriter FileWriter此类的构造方法是假定默认的字符编码和默认的字节缓冲区大小,FileWriter是用于写入字符流 FileWriter(File file...关闭了就不可以在使用了. public void close(){ flush(); } // 简书作者:达叔小生 public abstract void close() throws IOException 异常...如果要使用其他编码时,要使用字符转换流,反之操作的是文件,且用默认的编码时,就使用FileWriter和FileReader....输入流从文件输入为读取,输出流从文件输出为写入数据。 输入流 输入流用于读取数据,用户可以从输入流中读取数据,但不能写入数据。 输入流读取数据过程如下: (1)打开一个流。
流 创建一个 FileWriter 对象,该文件会在指定目录下创建....fw.close(); //与flush的区别: flush刷新后流可以继续使用,close却将流关闭,不可再写入 } IO异常的标准处理方式一(以FileWriter为例)...=-1){ //relevant operation } 拷贝文件(建议使用方式二) //relevant operation --> fileWriter.write(..."); } } } } RandomAccessFile 可以在文件中的任何位置查找或写入数据。...然后是closeable关闭的优化 如果new FileOutputStream, 然后上级目录不存在会抛出FileNotFoundException异常, 所以需要先行创建上层文件夹。
数组名; 格式2:数据类型 数组名【】; 一维数组: int[] arr = new int[10]; 二维数组: int[] [] arr = new int[10][10]; 数组索引越界异常和空指针异常...java.lang.ArrayIndexOutOfBoundsException 数组越界异常 java.lang.NullPointerException 空指针异常 方法概述 简单的说...FileWriter向文件中写数据 FileWriter方法: 构造方法 FileWriter(String fileName)传入一个文件的路径 成员方法 void write(String str)...java.io.BufferedReader; import java.io.FileReader; import java.io.IOException; //BufferedWriter:将文本写入字符输出流...,缓冲各个字符,从而提供单个字符,数组和字符串的高效写入。
领取专属 10元无门槛券
手把手带您无忧上云