一致疏于JAVA IO方面的基础学习。
这次在使用到HDFS的文件接口的时候,就遇到这方面的问题。
于是巩固一下基础。
java io是典型的decorator设计模式。
Path path = new Path(“路径”);
FSDataIOutputStream fdos = fs.append(path); //追加
fdos.write……即可
fdos.flush();//刷出数据
FSDataInputStream fdis = fs.open(path);
Text line = new Text();
LineReader reader = new LineReader(fdis); //一行一行的读 使用LineReader
while(reader.readLine(line) > 0) {
System.out.println(line);//输出
}
fdis.close();
使用bufferedReader读取
String uri = "hdfs://localhost:9000/hadoop/test/IP-COUNTRY-REGION-CITY.CSV.hive";
Configuration conf = new Configuration();
FileSystem fs = null;
FSDataInputStream in = null;
BufferedReader d = null;
try {
fs = FileSystem.get(URI.create(uri), conf);
in = fs.open(new Path(uri));
d = new BufferedReader(new InputStreamReader(in)); //使用BufferedReader 进行readLine
String s = null;
int stat = 1;
while (true) {
System.out.println("line "+stat++);
s = d.readLine();
public class JavaFile01 { //InputStream 三个基本的读方法 //abstract int read() :读取一个字节数据,并返回读到的数据,如果返回-1,表示读到了输入流的末尾。 //int read(byte[] b) :将数据读入一个字节数组,同时返回实际读取的字节数。如果返回-1,表示读到了输入流的末尾。 //int read(byte[] b, int off, int len) :将数据读入一个字节数组,同时返回实际读取的字节数。 //如果返回-1,表示读到了输入流的末尾。 //off指定在数组b中存放数据的起始偏移位置; //len指定读取的最大字节数。 public static void main(String[] args) throws IOException { File f = new File("a.txt"); //InputStream是一个标准的输入接口 //对应读取数据的类有:FileInputStream ObjectInputStream等 //XXXInputStream就是为InputStream对象赋予额外的功能, InputStream in = new BufferedInputStream(new FileInputStream(f)); byte[] b = new byte[1024]; while(in.read()!=-1){ try { in.read(b); System.out.println("读入buffer的信息:"+new String(b)); } catch (IOException e) { e.printStackTrace(); } } // InputSteream和OutpurStream是针对基于字节(byte)输入输出设计的,实际应用中常常需要读 // 写的是基于字符(char ,Unicode 2 个字节)的,java.io.Reader和java.io.Writer就是所有读 // 写字符数据流的父类。 //FileReader作为Reader对象的数据源 BufferedReader brin = new BufferedReader(new FileReader("a.txt")); //Stream与Reader之间的转换 InputStreamReader isr = new InputStreamReader(in);//<--Stream输入 BufferedReader reader = new BufferedReader(isr);//使用Reader进行读取 System.out.println(reader.readLine()); } }
相关推荐
Java IO系统是Java平台中处理输入输出操作的核心组件,它为开发者提供了丰富的类库,用于读写文件、网络通信以及处理各种数据流。在Java中,IO系统主要由一系列的抽象类和接口组成,如InputStream、OutputStream、...
### Java IO(下): 过滤流(处理流)、缓冲流详解 #### 一、过滤流(处理流)概述 **过滤流**(处理流)是在Java IO系统中的一个重要概念,它建立在已有的流对象之上,并为其添加了额外的功能或性能优化。与节点流...
在Java编程语言中,`IO`(Input/Output)是处理数据输入和输出的核心部分,尤其是在处理大数据量文件时显得尤为重要。Java IO API提供了一系列类和接口,使得开发者能够高效地读取、写入和操作文件。下面我们将深入...
Java IO(Input/Output)是Java编程语言中用于处理输入输出操作的重要部分。在Java中,IO库提供了大量的类和接口,使得开发者可以方便地读取、写入数据到各种类型的输入输出源,如文件、网络连接、内存缓冲区等。...
根据给定的信息,我们可以深入探讨Java IO操作中的文件读写技术,特别关注如何从一个文本文件中筛选数据并保存到另一个文件中。 ### Java IO读写文件基础 在Java中,进行文件读写的操作通常涉及两个核心包:`java....
Java IO流总结 Java IO流是Java语言中最基本和最重要的输入/输出机制,负责将数据从外部世界输入到Java应用程序中或将数据从Java应用程序输出到外部世界。IO流可以分为两大类:字节流和字符流。 1. 节点流:离数据...
Java IO 流是Java平台中的核心概念,它用于在不同数据源之间进行数据传输,如文件、网络、内存等。Java IO系统提供了丰富的类库,使得开发者能够方便地处理输入和输出操作。在这个大总结中,我们将深入探讨Java IO流...
### 通俗易懂的Java IO讲解 在Java中,输入输出流(IO)是一个非常重要的概念,它涉及到了数据如何从一个地方传输到另一个地方。本文将深入浅出地介绍Java IO的基础概念,并通过实例帮助读者更好地理解这些概念。 ...
在Java编程语言中,IO(Input/Output)流是一组用于处理输入输出操作的类和接口,它们构成了Java IO API。这些类使得程序能够读取数据(输入)、写入数据(输出),并进行文件和网络之间的数据传输。本文将深入探讨...
### Java IO流详解 #### 一、Input和Output Stream概览 在Java中,输入输出流(简称IO流)是用来处理文件读写的核心技术之一。它主要包括两类:以字节为导向的流和以字符为导向的流。 ##### 1.1 以字节为导向的流...
### Java IO学习基础之读写文本文件 #### 一、Java IO概述 Java IO(Input/Output)是Java中处理输入输出操作的核心包,它主要提供了文件读写、网络通信等基本功能。Java IO操作主要基于流的概念进行,分为字节流...
### Java IO系统详解 #### 一、Java IO概述 Java IO(输入/输出)系统是Java平台中的一个重要组成部分,主要用于处理文件读写、网络通信等数据传输操作。Java IO库提供了一系列类和接口来实现这些功能,使得开发...
在Java编程语言中,输入/输出(IO)是处理数据传输的核心部分,特别是在与文件系统交互时。本文将深入探讨Java中的基本文件操作,包括文件的移动、读写以及文本文件的读写。 首先,让我们从文件操作开始。在Java中...
Java IO流是Java平台中用于处理输入输出操作的核心机制,它允许程序与各种数据源(如文件、设备、网络)进行交互。IO流分为两大类:字节流和字符流,分别处理字节数据和字符数据。在Java中,字节流由InputStream和...
Java IO流是Java平台中用于处理输入输出操作的重要机制,它允许程序与各种数据源(如文件、设备、网络)进行交互。在这个“java io流的实践案例大全”中,你将找到一系列全面且深入的示例,帮助你理解和掌握Java IO...
在Java编程语言中,`java.io`包是一个非常重要的包,它包含了用于处理输入和输出操作的类和接口。这个包允许我们与外部资源(如文件、设备、网络等)进行交互,包括读取和写入数据。在本章中,我们将深入探讨`java....
### Java IO的一般使用原则 在Java编程语言中,输入/输出(IO)操作是处理文件、网络数据流等外部资源的重要方式。合理地运用Java IO可以极大地提高程序的性能和稳定性。本文将深入探讨Java IO的一般使用原则,帮助...
### Java IO流详细分析 #### 一、Java IO流概述 在Java中,输入/输出(Input/Output,简称IO)操作是程序与外部设备进行数据交换的重要方式。Java提供了丰富的API来支持各种类型的IO操作,包括文件读写、网络通信...
在Java编程中,IO流(Input/Output Stream)是处理数据输入与输出的核心机制。Java IO流分为字符流和字节流,适用于不同类型的文件和数据源。本文将深入探讨如何使用IO流来读取文件,并通过实例代码详细解释每一个...