bufferedReader 的工作是为 K-mean 集群获取文件
Working of bufferedReader for fetching a file for K-mean clustering
我有一个 header 和两个 co-ordinates x 和 y 的数据集。我只是好奇 bufferedReader 如何在 Java 中工作,因为我从 Google 获得的以下代码在字符串变量中分别获取 Header 和数据。
File file = new File(fileName);
fileReader = new FileReader(file);
bufferedReader = new BufferedReader(fileReader);
@SuppressWarnings("unused")
String header = bufferedReader.readLine();
String line = "";
while(( line = bufferedReader.readLine() ) != null ){
String[] dataArr = line.split(STR_DELIM);
...
...
...
在使用 R 进行统计时,我们需要纠正一个线性代码,其中我们提到 Header = True 并且它会自动从第 2 行开始读取。
但在 java 的情况下,我们使用 readLine() 函数。
但我不确定它是如何工作的。
我的主要问题是:
1. readLine() 函数将从数据集中读取多长时间?它会寻找 \n 来停止阅读吗?
2. 如代码所示,使用readLine()函数读取第一行后,在while循环中使用会从第二行开始吗?
任何与 bufferedReader 及其应用程序密切合作的人,请帮助我澄清这些疑问。
谢谢---
每次调用 readline() 方法都会 return 以“\n”(对于 unix)或“\r\n”(对于 windows)结尾的字符串。
它将读取直到到达流的末尾,即直到文件中有行。我认为这回答了你的第一个问题
要回答您的第二个问题,每次调用 readLine() 都会 return 来自输入流(文件)的连续行。如果没有更多行,它 return 为空。
BufferedReader 与 FileReader 相同,具有 FileReader 所缺少的附加缓冲功能。
顺便说一句,如果您正在实施 K-means 算法,我建议您看一下 MATLAB 中的 kmeans() 函数。
使用 MATLAB,您可以用不到 5 行代码实现 kmeans 算法。另外,您可以在 MATLAB 中使用 importfile() 方法来读取您的输入数据
我有一个 header 和两个 co-ordinates x 和 y 的数据集。我只是好奇 bufferedReader 如何在 Java 中工作,因为我从 Google 获得的以下代码在字符串变量中分别获取 Header 和数据。
File file = new File(fileName);
fileReader = new FileReader(file);
bufferedReader = new BufferedReader(fileReader);
@SuppressWarnings("unused")
String header = bufferedReader.readLine();
String line = "";
while(( line = bufferedReader.readLine() ) != null ){
String[] dataArr = line.split(STR_DELIM);
...
...
...
在使用 R 进行统计时,我们需要纠正一个线性代码,其中我们提到 Header = True 并且它会自动从第 2 行开始读取。
但在 java 的情况下,我们使用 readLine() 函数。 但我不确定它是如何工作的。
我的主要问题是: 1. readLine() 函数将从数据集中读取多长时间?它会寻找 \n 来停止阅读吗? 2. 如代码所示,使用readLine()函数读取第一行后,在while循环中使用会从第二行开始吗?
任何与 bufferedReader 及其应用程序密切合作的人,请帮助我澄清这些疑问。
谢谢---
每次调用 readline() 方法都会 return 以“\n”(对于 unix)或“\r\n”(对于 windows)结尾的字符串。 它将读取直到到达流的末尾,即直到文件中有行。我认为这回答了你的第一个问题 要回答您的第二个问题,每次调用 readLine() 都会 return 来自输入流(文件)的连续行。如果没有更多行,它 return 为空。 BufferedReader 与 FileReader 相同,具有 FileReader 所缺少的附加缓冲功能。 顺便说一句,如果您正在实施 K-means 算法,我建议您看一下 MATLAB 中的 kmeans() 函数。 使用 MATLAB,您可以用不到 5 行代码实现 kmeans 算法。另外,您可以在 MATLAB 中使用 importfile() 方法来读取您的输入数据