将字符串保存到文件的 Java 程序
桌面上一个名为“gfg.txt”的演示文件用作机器上的本地目录。在编写程序之前创建一个空文件,并将该文件的特定路径提供给程序。
方法:
- 使用文件类的 writeString()方法
- 使用文件类的 write()方法
- 使用 Filewriter 类的 writer()方法
- 使用 Bufferedwriter 类的 write()方法
- 使用 PrintWriter 类的 write()方法
让我们分别讨论每种方法,通过干净的 java 程序实现相同的方法,以便对它们有一个公平的认识。
方法 1: 使用写字符串()方法【文件类的 T4】
Java 中文件类的 writeString() 方法用于将内容写入指定文件。 java.nio.file.Files' 类有一个预定义的WriteString()方法 ,该方法使用 UTF-8 字符集将所有内容写入一个文件。
语法:
Files.writeString(path, string, options)
参数:
- 路径:数据类型为路径的文件路径
- 字符串:一个指定的字符串,它将以返回类型字符串进入文件。
- 选项:在文件中输入字符串的不同选项。比如将字符串附加到文件中,用当前字符串覆盖文件中的所有内容,等等
返回值:此方法不返回值。
程序:
- 创建文件的实例。
- 使用实例、字符串和字符集调用 Files.writeString()方法。
例
Java 语言(一种计算机语言,尤用于创建网站)
// Java Program to Save a String to a File
// Using Files.writeString() method
// Importing required classes
import java.io.*;
import java.io.IOException;
import java.nio.charset.StandardCharsets;
import java.nio.file.Files;
import java.nio.file.Path;
import java.nio.file.Paths;
// Main class
public class GFG {
// Main driver method
public static void main(String[] args)
{
// Creating an instance of file
Path path
= Paths.get("C:\\Users\\HP\\Desktop\\gfg.txt");
// Custom string as an input
String str
= "Geeks for Geeks \nWelcome to computer science portal \nHello Geek";
// Try block to check for exceptions
try {
// Now calling Files.writeString() method
// with path , content & standard charsets
Files.writeString(path, str,
StandardCharsets.UTF_8);
}
// Catch block to handle the exception
catch (IOException ex) {
// Print messqage exception occurred as
// invalid. directory local path is passed
System.out.print("Invalid Path");
}
}
}
输出:
Geeks for Geeks
Welcome to computer science portal
Hello Geek
方法 2: 使用 编写文件类的()方法
java.nio.file.Files 类有一个预定义的 write()方法,用于将指定的文本写入文件。
*程序:*
- 创建文件的实例。
- 使用 string.getBytes()方法将字符串转换为字节数组。
- 最后调用方法即 Files.write()用文件实例和字节数组。
*例*
Java 语言(一种计算机语言,尤用于创建网站)
// Java Program to Save a String to a File
// Using Files.write() method
// Importing required classes
import java.io.*;
import java.io.IOException;
import java.nio.file.Files;
import java.nio.file.Path;
import java.nio.file.Paths;
// Main class
public class GFG {
// Main driver method
public static void main(String[] args)
{
// Creating an instance of file
Path path
= Paths.get("C:\\Users\\HP\\Desktop\\gfg.txt");
// Custom string as an input
String str
= "Geeks for Geeks \nWelcome to computer science portal \nHello Geek!";
// Converting string to byte array
// using getBytes() method
byte[] arr = str.getBytes();
// Try block to check for exceptions
try {
// Now calling Files.write() method using path
// and byte array
Files.write(path, arr);
}
// Catch block to handle the exceptions
catch (IOException ex) {
// Print message as exception occurred when
// invalid path of local machine is passed
System.out.print("Invalid Path");
}
}
}
*输出:*
Geeks for Geeks
Welcome to computer science portal
Hello Geek!
*方法 3:* 使用 FileWriter 类的 writer()方法
Filewriter 类用于在文件中写入一些数据。这是一种将数据写入文件的简单方法。
*程序:*
- 创建文件的实例。
- 将文件实例传递到 filewriter。
- 现在用字符串数据在文件写入器上调用 写入器()方法 。
- 刷新文件资源。
- 关闭文件资源。
*例*
Java 语言(一种计算机语言,尤用于创建网站)
// Java Program to Save a String to a File
// Using FileWriter class
// Importing required classes
import java.io.*;
import java.io.File;
import java.io.FileWriter;
import java.io.IOException;
public class GFG
{
public static void main(String[] args) throws IOException
{
//creating the instance of file
File path = new File("C:\\Users\\HP\\Desktop\\gfg.txt");
//passing file instance in filewriter
FileWriter wr = new FileWriter(path);
//calling writer.write() method with the string
wr.write("Geeks for Geeks \nWelcome to computer science portal \nHello Geek!!");
//flushing the writer
wr.flush();
//closing the writer
wr.close();
}
}
*输出:*
Geeks for Geeks
Welcome to computer science portal
Hello Geek!!
*方法 4:* 使用 BufferedWriter 类的 write()方法
BufferedWriter 类基本上为编写实例提供了一个缓冲区。我们可以将其他一些编写器(如 PrintWriter 和 FileWriter)包装到 BufferedWriter 中。BufferedWriter 对于在文件上执行多个写操作非常有效&写多个文件。BufferedWriter 比 Filewriter 效率更高。
*程序:*
- 创建文件的实例。
- 用 filewriter 声明流。
- 用字符串数据对流调用 write()方法。
*例*
Java 语言(一种计算机语言,尤用于创建网站)
// Java Program to Save a String to a File
// Using Files.write() method
// Importing required classes
import java.io.*;
import java.io.IOException;
import java.nio.file.Files;
import java.nio.file.Path;
import java.nio.file.Paths;
// Main class
public class GFG {
// Main driver method
public static void main(String[] args)
{
// Creating an instance of file
Path path
= Paths.get("C:\\Users\\HP\\Desktop\\gfg.txt");
// Custom string as an input
String str
= "Geeks for Geeks \nWelcome to computer science portal \nHello Geek!";
// Converting string to byte array
// using getBytes() method
byte[] arr = str.getBytes();
// Try block to check for exceptions
try {
// Now calling Files.write() method using path
// and byte array
Files.write(path, arr);
}
// Catch block to handle the exceptions
catch (IOException ex) {
// Print message as exception occurred when
// invalid path of local machine is passed
System.out.print("Invalid Path");
}
}
}
*输出:*
Geeks for Geeks
Welcome to computer science portal
Hello Geek!!!
*方法 5:* 使用 PrintWriter 类的 write()方法
PrintWriter 类是 Writer 类的扩展。PrintWriter 类用于使用 write()方法将字符串数据写入文件。
*程序:*
- 创建文件的实例。
- 创建一个 PrintWriter 流,并将文件实例传递给它。
- 用数据调用 write 方法。
- 冲洗小溪。
- 关闭流。
*例*
Java 语言(一种计算机语言,尤用于创建网站)
// Java Program to Save a String to a File
// Using PrintWriter class
// Importing required classes
import java.io.*;
import java.io.File;
import java.io.FileNotFoundException;
import java.io.PrintWriter;
// Main clas
public class GFG {
// Main driver method
public static void main(String[] args)
throws FileNotFoundException
{
// Creating an instance of file
File path
= new File("C:\\Users\\HP\\Desktop\\gfg.txt");
// Declaring the print writer with path
PrintWriter pw = new PrintWriter(path);
// Now calling writer() method with string
pw.write(
"Geeks for Geeks \nWelcome to computer science portal \nHello Geek!!!!");
// Flushing the print writer
pw.flush();
// Lastly closing the printwriter
// using the close() method
pw.close();
}
}
*输出:*
Geeks for Geeks
Welcome to computer science portal
Hello Geek!!!!
版权属于:月萌API www.moonapi.com,转载请注明出处