浅谈FileWriter,FileWriter,FileInputStream,FileOutputerStream
时间: 2023-10-25 14:29:18 浏览: 35
FileWriter是Java中用于写入字符数据到文件中的类,它继承自Writer类,可以将字符数据写入到文件中。FileWriter的使用可以分为如下几个步骤:
1. 创建FileWriter对象,可以指定写入的文件路径和文件名。
2. 调用write()方法写入字符数据。
3. 调用close()方法关闭文件流。
FileInputStream和FileOutputStream则是Java中用于读取和写入二进制数据到文件中的类,它们分别继承自InputStream和OutputStream类。它们的使用可以分为如下几个步骤:
1. 创建FileInputStream或FileOutputStream对象,可以指定读取或写入的文件路径和文件名。
2. 使用read()方法读取二进制数据或使用write()方法写入二进制数据。
3. 调用close()方法关闭文件流。
需要注意的是,在使用FileInputStream或FileOutputStream时,需要使用try-catch语句来捕获可能抛出的IOException异常。此外,在使用FileWriter、FileInputStream和FileOutputStream时,应该注意文件编码的问题,以免出现乱码等问题。
相关问题
在Java中,filewriter怎么读入对象
在Java中,FileWriter 类主要用于将字符写入文件中。如果您要读取对象,则需要使用其他类,例如ObjectInputStream类。下面是一个简单的例子,展示如何使用ObjectInputStream从文件中读取对象:
```java
try {
FileInputStream fileIn = new FileInputStream("file.ser");
ObjectInputStream in = new ObjectInputStream(fileIn);
Object obj = in.readObject();
in.close();
fileIn.close();
} catch (IOException i) {
i.printStackTrace();
} catch (ClassNotFoundException c) {
System.out.println("Class not found");
c.printStackTrace();
}
```
在上面的例子中,我们首先创建一个FileInputStream对象,它用于打开一个名为"file.ser"的文件。接下来,我们创建一个ObjectInputStream对象,并将FileInputStream对象传递给它。然后,我们使用ObjectInputStream对象的readObject()方法从文件中读取对象,并将其存储在一个Object变量中。最后,我们关闭ObjectInputStream和FileInputStream对象。
请注意,上述示例中的对象必须是序列化的,否则将无法从文件中读取它。要序列化对象,请确保对象所属的类实现了Serializable接口。
字符串转fileinputstream
要将字符串转换为FileInputStream,您可以按照以下步骤进行操作:
1. 首先,将字符串内容写入临时文件。您可以使用Java的FileWriter类来实现这一点。例如,假设您的字符串内容存储在名为"content"的变量中,您可以执行以下操作:
```java
String content = "This is the content of the string.";
File tempFile = File.createTempFile("temp", ".txt");
FileWriter writer = new FileWriter(tempFile);
writer.write(content);
writer.close();
```
2. 接下来,使用临时文件创建FileInputStream。您可以使用Java的FileInputStream类来实现这一点。例如,您可以执行以下操作:
```java
FileInputStream fis = new FileInputStream(tempFile);
```
3. 现在,您可以使用fis变量来读取临时文件中的内容。
4. 最后,记得在使用完毕后删除临时文件。您可以使用以下代码来删除临时文件:
```java
tempFile.delete();
```
这样,您就可以将字符串转换为FileInputStream了。