java怎么把从file中读入的字符串数据存到args里,只用一个class
时间: 2024-04-29 15:25:23 浏览: 8
在Java中,args是一个String数组,它是在程序启动时通过命令行参数传递给main方法的。如果你想将从file中读入的字符串数据存到args数组中,你可以使用以下代码:
```
import java.io.BufferedReader;
import java.io.FileReader;
import java.io.IOException;
public class Main {
public static void main(String[] args) throws IOException {
String fileName = "input.txt";
BufferedReader br = new BufferedReader(new FileReader(fileName));
String inputString = br.readLine();
br.close();
args = inputString.split("\\s+");
// do something with the args array
}
}
```
在这个示例中,我们使用BufferedReader从文件中读取一行字符串数据,然后使用split方法将它分隔成一个String数组,并将它赋值给args数组。现在你可以使用args数组中的数据来执行你的程序。请注意,这个示例忽略了异常处理,你应该在实际应用中进行适当的异常处理。
相关问题
java怎么把从file中读入的字符串数据存到args里
从file中读入的字符串数据可以通过以下方式存储到args里:
1. 首先,你需要将从file中读入的字符串数据存储到一个字符串数组中,例如:
```java
import java.io.BufferedReader;
import java.io.FileReader;
import java.io.IOException;
public class ReadFile {
public static void main(String[] args) {
String[] data = new String[10]; // assuming that the file contains 10 lines
int i = 0;
try (BufferedReader br = new BufferedReader(new FileReader("file.txt"))) {
String line;
while ((line = br.readLine()) != null) {
data[i++] = line;
}
} catch (IOException e) {
e.printStackTrace();
}
}
}
```
2. 然后,你可以将这个字符串数组作为参数传递给main方法,例如:
```java
import java.io.BufferedReader;
import java.io.FileReader;
import java.io.IOException;
public class ReadFile {
public static void main(String[] args) {
String[] data = new String[10]; // assuming that the file contains 10 lines
int i = 0;
try (BufferedReader br = new BufferedReader(new FileReader("file.txt"))) {
String line;
while ((line = br.readLine()) != null) {
data[i++] = line;
}
} catch (IOException e) {
e.printStackTrace();
}
// pass the data array as argument to main method
MainClass.main(data);
}
}
class MainClass {
public static void main(String[] args) {
// args will contain the data array passed as argument
for (int i = 0; i < args.length; i++) {
System.out.println(args[i]);
}
}
}
```
这样,从file中读入的字符串数据就可以存储到args里了。
用java语言写一段程序实现从文本文件读入数据,并统计文件中指定字符串出现的次数,然后将统计结果写到另外一个文本文件中
好的,以下是Java程序代码:
```java
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
public class StringCounter {
public static void main(String[] args) {
String inputFile = "input.txt"; // 输入文件路径
String outputFile = "output.txt"; // 输出文件路径
String target = "hello"; // 指定字符串
int count = 0; // 统计指定字符串出现的次数
try (BufferedReader reader = new BufferedReader(new FileReader(inputFile))) {
String line;
while ((line = reader.readLine()) != null) {
count += countMatches(line, target); // 统计指定字符串在当前行中出现的次数
}
} catch (IOException e) {
e.printStackTrace();
}
try (BufferedWriter writer = new BufferedWriter(new FileWriter(outputFile))) {
writer.write(String.valueOf(count)); // 将统计结果写入输出文件
} catch (IOException e) {
e.printStackTrace();
}
}
// 统计字符串 str 中子串 sub 出现的次数
private static int countMatches(String str, String sub) {
if (str == null || str.isEmpty() || sub == null || sub.isEmpty()) {
return 0;
}
int count = 0;
int index = 0;
while ((index = str.indexOf(sub, index)) != -1) {
count++;
index += sub.length();
}
return count;
}
}
```
在程序中,我们使用 `BufferedReader` 和 `FileReader` 读取输入文件中的每一行,并在每一行中统计指定字符串的出现次数。使用 `BufferedWriter` 和 `FileWriter` 将统计结果写入输出文件中。`countMatches` 方法用于统计字符串中子串出现的次数。
在使用时,只需将输入文件路径、输出文件路径和指定字符串修改为需要的值即可。