0

我正在使用 java,目前,我可以从 Internet 下载文本文件,读取该文件,然后将该文件发送到Scanner. 是否可以跳过将其写入硬盘并将其直接发送到扫描仪?我尝试更改一些代码,但没有成功。

URL link = new URL("http://shayconcepts.com/programming/ComicDownloader/version.txt");
ReadableByteChannel rbc = Channels.newChannel(link.openStream());//Gets the html page
FileOutputStream fos = new FileOutputStream("version.txt");//Creates the output name of the output file to be saved to the computer
fos.getChannel().transferFrom(rbc, 0, 1 << 24);
fos.close();
Scanner sc = new Scanner(new FileReader("version.txt"));
4

1 回答 1

2

是的,这绝对是可能的。就像你说的那样做:将来自 URL 的输入流直接馈送到扫描仪中。

Scanner sc = new Scanner(link.openStream());

它也有一个接受输入流的构造函数。顺便说一下,它接受charset 作为第二个参数,如果文本文件的字符编码可能与平台默认字符编码不同,您可能希望使用它,否则您可能会冒Mojibake的风险。

Scanner sc = new Scanner(link.openStream(), "UTF-8");
于 2012-09-14T02:26:37.733 回答