精华内容
下载资源
问答
  • 1 问题描述对于java的读取和写入txt一直心存疑惑,随着知识的积累,又重新进行学习,对java文件读写理解更加深刻,在这里将自己的小小经验总结分享给大家。下面是大家了解java流的一个基本框架。2 问题分析在java...

    1 问题描述

    对于java的读取和写入txt一直心存疑惑,随着知识的积累,又重新进行学习,对java的文件读写理解更加深刻,在这里将自己的小小经验总结分享给大家。下面是大家了解java流的一个基本框架。

    7b15a9744527be34d8c9e6ed36942022.png

    2 问题分析

    在java中,java的读写操作(输入输出)可以用“流”这个概念来表示,输入和输出功能是Java对程序处理数据能力的提高, java的读写操作又分为两种:字符流和字节流。Java以流的形式处理数据。流是一组有序的数据序列,根据操作的类型,分为输入流和输出流。

    程序从输入流读取数据,向输出流写入数据。Java是面向对象的程序语言,每一个数据流都是一个对象,它们提供了各种支持“读入”与“写入”操作的流类。那么具体是怎么进行操作的呢?

    3 解决方案

    首先我们要明白什么是字符流和字节流。字节流也称为原始数据,需要用户读入后进行相应的编码转换。而字符流的实现是基于自动转换的,读取数据时会把数据按照JVM的默认编码自动转换成字符。字符流是由Java虚拟机将字节转化为2个字节的Unicode字符为单位的字符而成的。字节流可用于任何类型的对象,包括二进制对象,而字符流只能处理字符或者字符串,字节流提供了处理任何类型的IO操作的功能,但它不能直接处理Unicode字符,而字符流就可以;

    让我们来看看java具体的输入输出操作:

    1 使用File类打开一个文件

    2 通过字节流或字符流的子类,指定输出的位置,注,

    3 进行读/写操作

    4 关闭输入/输出

    d045fdec9e51975bd70f55191e70e05d.png

    8bb7dfb7d685252b17bf1202ada66917.png

    4c658ad83626af15a81f9db24e79c85d.png

    注意:最后一句是我们写类时,通过Java工具自动生成的提示,表示是注释语句,在这里没有具体的意义。

    下面就是运行结果:

    31022a10ed44c33a2d6c2df2c085756b.png

    按照字符流的方法写入文件:

    4b26f97f0a4107fb804346c90c3b6c4d.png

    4 总结

    补充:

    file对象的创建:

    new File(String pathName)

    File file = newFile(“E://1.txt”)

    new File(String parent ,String child)

    parent :父抽象路径名;child:子路径名字符串

    本文只是简单的分享了java读写txt文件,对于java的读写还有很多种方式,譬如:以字节为单位读取文件,常用于读二进制文件,如图片、声音、影像等文件。以字符为单位读取文件,常用于读文本,数字等类型的文件;以行为单位读取文件,常用于读面向行的格式化文件以及随机读取文件。除了java的读写文件以外,还有创建删除等操作,需要我们更全方面的学习和应用。

    更多精彩文章:

    什么是机器学习

    关于网页首页设计的一点思考

    新手小白应该如何学习MUI

    聊一聊编程的本质

    深入理解浏览器内核 - 概述

    深入理解浏览器内核 - 浏览器内核介绍

    深入理解浏览器内核 - 浏览器内核依赖关系

    python快速求解不定积分和定积分

    AI告诉你张无忌最爱的竟是...

    Jupyter快速编辑高大上数学公式 泰勒展开式

    Jupyter快速编辑高大上数学公式 常见希腊字母

    基本初等函数 指数函数

    基本初等函数 指数函数 代码篇

    聊一聊JavaWeb面试

    聊一聊单片机和服务器

    50行代码实现简单的网站服务器

    50行代码实现网站服务器 2

    50行代码实现网站服务器 3

    Tomcat源码分析之 doGet方法(一)

    Tomcat源码分析之 doGet方法(二)

    Tomcat源码分析之 doGet方法(三)

    Tomcat源码分析之 doGet方法(四)

    Tomcat源码分析之中文乱码(一)

    一种基于状态机的 DOM 树生成技术(1)

    一种基于状态机的 DOM 树生成技术(2)

    点击页面右下角“写留言”发表评论,期待您的参与!期待您的转发!

    展开全文
  • InputStream字节输入流OutputStream字节输出流用于以字节的形式读取和写入数据步骤1:ASCII码 概念步骤2:以字节流的形式读取文件内容步骤3:以字节流的形式向文件写入数据步骤4:练习-写入数据到文件步骤5:答案-写入...

    InputStream字节输入流
    OutputStream字节输出流
    用于以字节的形式读取和写入数据

    步骤1:ASCII码 概念步骤2:以字节流的形式读取文件内容步骤3:以字节流的形式向文件写入数据步骤4:练习-写入数据到文件步骤5:答案-写入数据到文件步骤6:练习-拆分文件步骤7:答案-拆分文件步骤8:练习-合并文件步骤9:答案-合并文件

    步骤 1 : ASCII码 概念步骤 2 : 以字节流的形式读取文件内容
    InputStream是字节输入流,同时也是抽象类,只提供方法声明,不提供方法的具体实现。
    FileInputStream 是InputStream子类,以FileInputStream 为例进行文件读取

    package stream;
      
    import java.io.File;
    import java.io.FileInputStream;
    import java.io.IOException;
      
    public class TestStream {
      
     public static void main(String[] args) {
     try {
     //准备文件lol.txt其中的内容是AB,对应的ASCII分别是65 66
     File f =new File("d:/lol.txt");
     //创建基于文件的输入流
     FileInputStream fis =new FileInputStream(f);
     //创建字节数组,其长度就是文件的长度
     byte[] all =new byte[(int) f.length()];
     //以字节流的形式读取文件所有内容
     fis.read(all);
     for (byte b : all) {
     //打印出来是65 66
     System.out.println(b);
     }
      
     //每次使用完流,都应该进行关闭
     fis.close();
      
     } catch (IOException e) {
     // TODO Auto-generated catch block
     e.printStackTrace();
     }
      
     }
    }

    步骤 3 : 以字节流的形式向文件写入数据
    OutputStream是字节输出流,同时也是抽象类,只提供方法声明,不提供方法的具体实现。
    FileOutputStream 是OutputStream子类,以FileOutputStream 为例向文件写出数据
    注: 如果文件d:/lol2.txt不存在,写出操作会自动创建该文件。
    但是如果是文件 d:/xyz/lol2.txt,而目录xyz又不存在,会抛出异常

    704de57eb782584d81b727cf3ccb0731.png
    package stream;
     
    import java.io.File;
    import java.io.FileOutputStream;
    import java.io.IOException;
     
    public class TestStream {
     
     public static void main(String[] args) {
     try {
     // 准备文件lol2.txt其中的内容是空的
     File f = new File("d:/lol2.txt");
     // 准备长度是2的字节数组,用88,89初始化,其对应的字符分别是X,Y
     byte data[] = { 88, 89 };
     
     // 创建基于文件的输出流
     FileOutputStream fos = new FileOutputStream(f);
     // 把数据写入到输出流
     fos.write(data);
     // 关闭输出流
     fos.close();
      
     } catch (IOException e) {
     // TODO Auto-generated catch block
     e.printStackTrace();
     }
     
     }
    }


    更多内容,点击了解: https://how2j.cn/k/io/io-bytestream/340.html

    展开全文
  • Java 8使用BufferedWriter写入文件BufferedWriter如果没有缓冲,每次调用print()方法都会导致将字符转换为字节,然后立即写入文件,这是非常低效的。使用Java 8 API将内容写入文件Java程序是–//Get the file ...

    离歌且莫翻新阕,一曲能教肠寸结。直须看尽洛城花,始共春风容易别。

    587c6a37add4e16a6abca944b33d1611.png

    Java 8使用BufferedWriter写入文件

    BufferedWriter如果没有缓冲,每次调用print()方法都会导致将字符转换为字节,然后立即写入文件,这是非常低效的。

    使用Java 8 API将内容写入文件的Java程序是–

    //Get the file referencePath path = Paths.get("c:/output.txt");//Use try-with-resource to get auto-closeable writer instancetry (BufferedWriter writer = Files.newBufferedWriter(path)){ writer.write("Hello World !!");}

    使用Files.write()写入文件

    使用Files.write()方法也是相当简洁的代码。

    String content = "Hello World !!";Files.write(Paths.get("c:/output.txt"), content.getBytes());

    Java 8列出目录中的所有文件–六个示例

    展开全文
  • java写入txt文件

    千次阅读 2015-05-12 17:42:57
    java生成txt文件有有两种方式,一种是通过字符流(或字节流),另一种是直接调用PrintWriter类。 1、字符流(字节流) 代码如下: import java.io.File; import java.io.FileOutputStream; public class ...

    用java生成txt文件有有两种方式,一种是通过字符流(或字节流),另一种是直接调用PrintWriter类。

    1、字符流(字节流)

    代码如下:

    import java.io.File;
    import java.io.FileOutputStream;

    public class TxtWirte {
     public void DOWriteTxt(String file, String txt) {
      try {
       FileOutputStream os = new FileOutputStream(new File(file), true);
       os.write((txt + "\n").getBytes());
      } catch (Exception e) {
       e.printStackTrace();
      }
     }

     public static void main(String[] args) {
      new TxtWirte().DOWriteTxt("D:\\问好.txt", "你好!");
     }
    }

    2、调用PrintWriter类

    import java.io.*;

    public class C {
        public static void main( String[ ] args ) throws Exception {
            PrintWriter pw = new PrintWriter( new FileWriter( "D;\\问好.txt" ) );
            pw.print("你好" );
            pw.close();
        }
    }

      如果要生成doc文件,将“D:\\问好.txt”改成“D:\\问好.doc”即可。

     

     

     

     


    的:java写一定内容到指定路径的文件中

    程序源码,1.50版本执行成功:

    import java.io.FileNotFoundException;
    import java.io.FileOutputStream;
    import java.io.IOException;


    public class WriteToDoc {

     
     public static void main(String[] args) {
      // TODO Auto-generated method stub
      byte[] buffer=new byte[1024];
      boolean cont=true;  //循环控制变量
      FileOutputStream outfile=null;  //文档输出对象
      //生成对象outfile,准备输出到文档
      try
      {
       outfile=new FileOutputStream(args[0]);
      }catch(FileNotFoundException e)
      {
       System.out.println("File Not Found!");
       System.exit(1);
      }
      //行首没有输入句号时执行以下循环
      while(cont)
      {
       try{
        //从控制台读入数据
        int n=System.in.read(buffer);
        //输出到控制台
        System.out.println(n);
        if(buffer[0]=='#')
        {
         cont=false;
        }
        else
        {
         outfile.write(buffer, 0, n);
        }
       }catch(Exception e)
       {
        System.exit(1);
       }
      }
      try{
       outfile.close();
      }catch(IOException e)
      {
       System.err.println("文档错误");
       System.exit(1);
      }
     }

    }
    分析:
    FileOutputStream的write方法原型:
     public void write(byte[] b,
                       int off,
                       int len)
                 throws IOException
    第一个参数:表示从哪里读取数据
    第二个参数:表示数据从什么地方开始写,比如如果数据为"hahatest",而off=4的话,则写到文本里边的是test
    第三个参数:写入数据的长度,本例中n=System.in.read得到的,假如输入的数据为"haha",则n=6,因为加了一个换行进去,如果想把输入不同行的数据最后写到一行里边,需要n-2。

    java写中文,如果是有长度限制,使用outFile.write(name.getBytes(),0,name.getBytes().length);这样即使name是中英文混和的也能处理
    import java.io.*;
    public class javaCh
    {
     public static void main(String[] arg)
     {
      FileOutputStream outFile=null;
      try{
       outFile=new FileOutputStream("test.txt");
       String name="李小毛";
       outFile.write(name.getBytes());
       }catch(IOException e)
       {
        System.exit(1);
        }
      finally
      {
       try{
        outFile.close();
         }catch(IOException e)
         {
          System.exit(1);
          }
       }
      }
     }

     

    展开全文
  • public class FileOut {public static void main(String[] args) {// 绑定要读取的文件对象File readerfile = new File("D:/JavaTest/chuichui/zzj/a.txt");// 绑定一个写入对象File writerfile = n...
  • 读取文件的时候如果是用的read方法(字节流),碰到中文输出就是乱码,然后存储的时候设置下编码为GBK或者是UTF-8形式即可,可以有效的解决乱码问题。可以通过BufferedReader 流的形式进行流缓存,之后通过readLine...
  • 原文:http://www.cnblogs.com/lovebread/archive/2009/11/23/1609122.html1、按字节读取文件内容2、按字符读取文件内容3、按行读取文件内容4、随机读取文件内容 public class ReadFromFile { /** * 以字节为...
  • 本人实现了下读取read.txt写入到write.txt末尾import java.io.*;public class WriteToFileEnd {/*** 读取read.txt写入到write.txt末尾*/public static void main(String[] args) {// 字节输入流FileInputStream fis ...
  • Java读取txt文件和写入txt文件GOOD

    千次阅读 2013-06-27 14:09:12
    文件的读取与写入一般有三种,按字节写,按字符写,按行写。对于按字符本人不是很了解,对于按字节与按行写了解比较多。  一,对于按字节写一般是定义字节数组,然后通过read方法把字节写入字节数组即可。...
  • 本人实现了下读取read.txt写入到write.txt末尾import java.io.*;public class WriteToFileEnd {/*** 读取read.txt写入到write.txt末尾*/public static void main(String[] args) {// 字节输入流FileInputStream fis ...
  • FileInputStream来读取,完全没有问题,他是读取字节形式的,所以读到中文字符的时候,字节流就会出现乱码,所以必去用要字符流来读取,在用FileInputStream读取文件是用他里面read()方法来读取的,是一口气直接...
  • 写txt java_JAVA写入TXT

    2021-03-04 01:33:35
    java生成txt文件有两种方式:1)是通过字符流(或字节流);2)是直接调用PrintWriter类。具体实现过程如下:1)字符流(字节流)代码如下:import java.io.File;import java.io.FileOutputStream;public class TxtWirte ...
  • JAVA写入TXT

    千次阅读 2019-08-06 14:53:19
    java生成txt文件有两种方式: 1)是通过字符流(或字节流); 2)是直接调用PrintWriter类。 具体实现过程如下: 1)字符流(字节流) 代码如下: import java.io.File;import java.io.FileOutputStream; ...
  • 本次实现文件复制将要用到的字节流:InputStream(所有字节输入流的父类)OutputStream(所有字节输出流的父类...使用FileOutputStream写入文件这里以复制一个.txt文件为例:实现代码:package com.pc; import java.io....
  • 在前文《read文件一个字节实际会发生多大的磁盘IO?》写完之后,本来想着偷个懒,只通过读操作来让大家了解下Linux IO栈的各个模块就行了。但很多同学表示再让我写一篇关于写操作的。既然不少同学都有这个需求,那我...
  • JAVA写入TXT

    千次阅读 2008-07-15 10:39:00
    java生成txt文件有有两种方式,一种是通过字符流(或字节流),另一种是直接调用PrintWriter类。1、字符流(字节流)代码如下:import java.io.File;import java.io.FileOutputStream;public class TxtWirte { ...
  • java写入数据到文件

    万次阅读 2018-05-11 10:06:46
    字节流的形式向文件写入数据 中的例子,当666.txt不存在的时候,是会自动创建666.txt文件的。但是,如果是写入数据到E:/file/LOL/666.txt,而目录LOL又不存在的话,就会抛出异常。那么怎么自动创建LOL目录?字符...
  • java写入txt,doc

    千次阅读 2008-05-14 17:05:00
    java生成txt文件有有两种方式,一种是通过字符流(或字节流),另一种是直接调用PrintWriter类。1、字符流(字节流)代码如下:import java.io.File;import java.io.FileOutputStream;public class TxtWirte { ...
  • 1. 在指定的路径下新建一个 txt 文件 "aura.txt",利用程序在文件写入如下内容: "Hadoop(hdfs、mapreduce、yarn) 元老级大数据处理技术框架,擅长离线数据分析,Hbase 分布式海量数据库,离线分析和在线业务...
  • 一,读取文件 1,建立联系:File对象 2.选择流 文件输入流 InputStream FileInputStream 3.操作:byte[] car = new byte[1024]; +read 读取大小 ... File src = new File("d:/a.txt"); //选择流 InputStream
  • /***1 按字节写入 FileOutputStream**@paramcount 写入循环次数*@paramstr 写入字符串*/public void outputStreamTest(intcount, String str) {File f= new File("f:test1.txt");OutputStream os= null;try{os= ...
  • 基本概念IO:Java对数据的操作是通过流的方式,IO流用来处理设备之间的数据传输,上传文件和下载文件Java用于操作流的对象都在IO包中。2.IO流的分类图示:(主要IO流)3.字节流(1).字节流基类1)....
  • )创建一个文件字节输出流的对象,将内容“I Love China” 写入F盘下的“abc.txt”文档中。 */代码: import java.io.FileNotFoundException; import java.io.FileOutputStream; import java.io.IOException; /* ...
  • 一个222k的txt文件,拆分之后什么是流(Stream),流就是一系列的数据InputStream字节输入流 OutputStream字节输出流 用于以字节的形式读取和写入数据import java.io.File; import java.io.FileInputStream; import ...
  • NULL 博文链接:https://jayxigua.iteye.com/blog/690203
  • java文件操作:读取文件字节流,将字节写入文件,按行读取文件成字符串列表,将字符串列表存储成文件,读取文件成字符串,将字符串写入文件。 主程序测试文件 //测试程序 public static void main(String[] ...
  • public class ReadFromFile... * 以字节为单位读取文件,常用于读二进制文件,如图片、声音、影像等文件。 */ public static void readFileByBytes(String fileName) { File file = new File(fileName); InputSt...
  • 一旦转换为字节流,就可以将这些对象写入文件。反向过程称为反序列化。如果Java对象的类或其任何超类实现java.io.Serializable接口或其子接口java.io.Externalizable,则该对象是可序列化的。1. Java对象Person....
  • 目录一、File 类二、IO流三、字节输出流四、字节输入流五、字节文件复制六、字符输出流七、字符输入流八、字符流复制文本文件一、File 类1. 概述文件 和 目录路径名 的抽象表达形式Java中把文件或者目录(文件夹)都...

空空如也

空空如也

1 2 3 4 5 ... 11
收藏数 218
精华内容 87
关键字:

java字节写入txt文件

java 订阅