在命令行中监视输入流的进度

d6kp6zgx  于 2021-07-09  发布在  Java
关注(0)|答案(1)|浏览(521)

我正在阅读一个大的文本文件从互联网到字符串,我想显示一些进展排序。通常我会使用progressmonitorinputstream,但这个程序严格地在命令行中运行,所以这不是一个选项。有没有什么简单的方法可以得到某种百分比、剩余字节或其他类型的反馈?这是我的密码:

URL inUrl = new URL(*URL to be red*);
InputStream inStream=inUrl.openStream();
BufferedReader in=new BufferedReader(new InputStreamReader(inStream,Charset.forName("UTF-8")));
while(in.ready()){

    string=string+in.readLine();

}
in.close();
r6hnlfcb

r6hnlfcb1#

首先使用file.length方法获取文件大小。或者httpconnection.getcontentlength(),如果它是基于internet的资源。
在while循环中,百分比是

while(in.ready()){
    string = string +in.readLine();
    percentage = (string.length() / fileLength) * 100;
}

顺便说一下,这不是一个好的做法

string + in.readLine()

使用stringbuffer来连接。

相关问题