用Java读取文件
我有以下代码来打开和读取文件。我很难弄清楚如何让它通过并打印文件中每个字符的总数,打印第一个和最后一个字符,并在文件中间精确打印字符。最有效的方法是什么 这是主要课程:用Java读取文件,java,file,Java,File,我有以下代码来打开和读取文件。我很难弄清楚如何让它通过并打印文件中每个字符的总数,打印第一个和最后一个字符,并在文件中间精确打印字符。最有效的方法是什么 这是主要课程: import java.io.IOException; public class fileData { public static void main(String[ ] args) throws IOException { String file_name = "/Users/JDB/NetBeansProject
import java.io.IOException;
public class fileData {
public static void main(String[ ] args) throws IOException {
String file_name = "/Users/JDB/NetBeansProjects/Program/src/1200.dna";
try {
ReadFile file = new ReadFile(file_name);
String[] arrayLines = file.OpenFile();
int i;
for (i=0; i<arrayLines.length; i++)
{
System.out.println(arrayLines[i]);
}
}
catch (IOException e) {
System.out.println(e.getMessage()) ;
}
}
}
import java.io.IOException;
公共类文件数据{
公共静态void main(字符串[]args)引发IOException{
字符串文件_name=“/Users/JDB/NetBeansProjects/Program/src/1200.dna”;
试一试{
ReadFile file=新的ReadFile(文件名);
字符串[]arrayLines=file.OpenFile();
int i;
对于(i=0;i一些可能有用的提示
Map
可用于存储字母表中每个字符的相关信息
从文件的大小可以找到文件的中间部分
一些可能有用的提示
Map
可用于存储字母表中每个字符的相关信息
从文件的大小可以找到文件的中间部分
我能想到的最容易理解的方法是将整个文件作为字符串读入,然后使用String类上的方法获取第一个、最后一个和中间字符(索引str.length()/2处的字符)
由于您已经在文件中一次读取一行,因此可以使用StringBuilder从这些行构造一个字符串方法您应该能够获取所需的所有内容。我能想到的最简单的理解方法是将整个文件作为字符串读入。然后使用String类上的方法获取第一个、最后一个和中间字符(索引str.length()/2处的字符)
由于您已经在文件中一次读取一行,因此可以使用StringBuilder从这些行中构造字符串。使用生成的字符串、charAt()和substring()方法,您应该能够获取所需的所有内容。这几行代码就可以(使用库):
任何人说“你不能用图书馆做作业”都是不公平的——在现实世界中,我们总是优先使用图书馆。这几行代码就可以做到(使用图书馆):
任何说“你不能用图书馆做作业”的人这不公平吗?在现实世界中,我们总是优先使用图书馆。没错,我们在现实世界中确实使用图书馆,但你不认为这会使家庭作业毫无意义,因此显然不是预期的答案吗?别误会,我可能会在上学时尝试你的方法……我会给老师一个答案答案是不使用第三方图书馆的答案。没错,我们确实在现实世界中使用它们。但你不认为这会使家庭作业毫无意义,因此显然不是预期的答案吗?别误会,我可能会在学校时尝试你的方法……我会给老师这个答案。还有回答R不使用第三方库。>,->你在看什么样的效率?速度还是内存占用?你在看什么样的效率?速度还是内存占用?还考虑……我们想把新的行字符看作是“文件中的字符”吗?IE:我们是否将它们包含在计数中,并且在查找文件的“中间”字符时是否考虑它们?还考虑……我们是否要考虑新行字符为“文件中的字符”?IE:是否将它们包含在计数中,并且在查找文件的“中间”字符时是否考虑它们?
import java.io.IOException;
import java.io.FileReader;
import java.io.BufferedReader;
public class ReadFile {
private String path;
public ReadFile (String file_path)
{
path = file_path;
}
public String[] OpenFile() throws IOException
{
FileReader fr = new FileReader(path);
BufferedReader textReader = new BufferedReader(fr);
int numberOfLines = readLines();
String[] textData = new String[numberOfLines];
int i;
for(i=0; i<numberOfLines; i++)
{
textData[i] = textReader.readLine();
}
textReader.close();
return textData;
}
int readLines() throws IOException
{
FileReader file_to_read = new FileReader(path);
BufferedReader bf = new BufferedReader(file_to_read);
String aLine;
int numberOfLines = 0;
while (( aLine = bf.readLine() ) != null)
{
numberOfLines++;
}
bf.close();
return numberOfLines;
}
import org.apache.commons.io.FileUtils;
public static void main(String[] args) throws IOException {
String str = FileUtils.readFileToString(new File("myfile.txt"));
System.out.println("First: " + str.charAt(0));
System.out.println("Last: " + str.charAt(str.length() - 1));
System.out.println("Middle: " + str.charAt(str.length() / 2));
}