标签: progress

如何使用Apache HttpClient 4获取文件上传的进度条?

我有以下代码用于使用Apache的HTTP-Client(org.apache.http.client)上传文件:

  public static void main(String[] args) throws Exception
  {
    String fileName = "test.avi";
    File file = new File(fileName);

    String serverResponse = null;
    HttpParams params = new BasicHttpParams();
    params.setParameter(HttpProtocolParams.USE_EXPECT_CONTINUE, true);
    HttpProtocolParams.setVersion(params, HttpVersion.HTTP_1_1);
    HttpClient client = new DefaultHttpClient(params);
    HttpPut put = new HttpPut("http://localhost:8080/" + fileName);

    FileEntity fileEntity = new FileEntity(file, "binary/octet-stream");
    put.setEntity(fileEntity);   

    HttpResponse response = client.execute(put);
    HttpEntity entity = response.getEntity();
    if (entity != null)
    {
      serverResponse = EntityUtils.toString(entity);
      System.out.println(serverResponse);
    }
  }
Run Code Online (Sandbox Code Playgroud)

它工作得很好,但现在我想要一个进度条,显示文件上传的进度.怎么做到这一点?我在File Upload with Java(带进度条)中找到了一个代码片段,但是它是为Apache HTTP Client 3(org.apache.commons.httpclient)设计的,并且Apache HTTP Client …

java apache client http progress

22
推荐指数
4
解决办法
2万
查看次数

如何使用新的 try wait URLSession.shared.download(...) 获取下载进度

苹果刚刚引入了 async/await 和一堆Foundation使用它们的函数。我正在使用新的异步/等待模式下载文件,但我似乎无法获取下载进度。

(downloadedURL, response) = try await URLSession.shared.download(for: dataRequest, delegate: self) as (URL, URLResponse)
Run Code Online (Sandbox Code Playgroud)

正如您所看到的,有一个委托,我尝试使我的类符合并URLSessionDownloadDelegate实现该urlSession(_:downloadTask:didWriteData:totalBytesWritten:totalBytesExpectedToWrite:) 函数,但它从未被调用。

我还尝试创建一个新的 URLSession 并将其委托设置为同一个类,希望 URLSession 能够调用此函数,但它永远不会被调用,并且文件仍然可以愉快地下载。但我需要进度,请问如何获得?

progress async-await swift urlsession

22
推荐指数
2
解决办法
5615
查看次数

git clone的进度指示器

做一个进度条有可能git clone吗?我想知道因为我目前正在做一个git克隆,到目前为止已经花了几分钟,并且很想知道它是否即将完成.

git progress git-clone

21
推荐指数
3
解决办法
2万
查看次数

如何使用纯CSS将HTML5 Progress元素设置为Circle/Pie样式

HTML5引入了一个新的"progress"元素,默认情况下将其呈现为进度条(温度计).

一个非常基本的例子是:

<progress max="100" value="85"></progress>
Run Code Online (Sandbox Code Playgroud)

我一直在尝试使用javascript的各种进度圈选项,并且这里讨论的一些纯CSS方法给我留下了非常深刻的印象: CSS Progress Circle

我有兴趣知道是否有人成功地将CSS应用于"progress"元素以提供饼图/时钟/圆形渲染而不是线性显示?

EDIT/ADDENDUM:"仪表"元素也非常类似于"进度",但提供了低/高范围......我更多地提到这一点,对于未来可能偶然发现这篇文章并希望应用类似技术的人到HTML5米元素.

html5 progress css3 progress-bar

21
推荐指数
2
解决办法
2085
查看次数

Haskell Lazy ByteString +读/写进度函数

我正在学习Haskell Lazy IO.

我正在寻找一种优雅的方式来复制大文件(8Gb),同时将复制进度打印到控制台.

请考虑以下以静默方式复制文件的简单程序.

module Main where

import System
import qualified Data.ByteString.Lazy as B

main = do [from, to] <- getArgs
          body <- B.readFile from
          B.writeFile to body
Run Code Online (Sandbox Code Playgroud)

Imgine有一个你想用于报告的回调函数:

onReadBytes :: Integer -> IO ()
onReadBytes count = putStrLn $ "Bytes read: " ++ (show count)
Run Code Online (Sandbox Code Playgroud)

问题:如何将onReadBytes函数编织到Lazy ByteString中,以便在成功读取时调用它?或者如果这个设计不好,那么Haskell的做法是什么?

注意:回调的频率并不重要,可以每1024字节或每1Mb调用一次 - 不重要

答案:非常感谢camccann的答案.我建议完全阅读.

Bellow是基于camccann代码的代码版本,您可能会发现它很有用.

module Main where

import System
import System.IO
import qualified Data.ByteString.Lazy as B

main = do [from, to] <- getArgs
          withFile from ReadMode $ …
Run Code Online (Sandbox Code Playgroud)

io haskell progress lazy-evaluation bytestring

20
推荐指数
1
解决办法
3014
查看次数

更薄的Bootstrap进度条?

如何使用Bootstrap 3.0使进度条更薄?我在想YouTube喜欢/不喜欢米的样子(蓝色条).我试过搜索任何CSS技巧但找不到任何东西.

progress twitter-bootstrap

20
推荐指数
2
解决办法
2万
查看次数

在SQL SERVER中监视SQL查询的进度

我看到一个类似的问题,询问如何监视备份/恢复操作的进度: 是否有一个SQL脚本可以用来确定SQL Server备份或恢复过程的进度?

我想知道是否有类似的查询/方式来查看查询剩余的时间,直到它结束. 例如,一个查询通常具有5分钟的经过时间.我想知道在查询执行期间它将结束多长时间.

database sql-server-2005 progress monitor

19
推荐指数
4
解决办法
6万
查看次数

预加载百分比 - javascript/jquery

我做了谷歌搜索,我找不到用百分比进行加载的方法.有谁知道我怎么能找到一个例子?

在显示内容之前,我需要从0到100的网站预加载,但是我找不到任何示例.

javascript jquery loading progress

19
推荐指数
3
解决办法
7万
查看次数

我想要一个进度循环而不是进度对话框

我想在加载数据时在我的应用中显示进度圈.我有一个活动,从一个活动转移到另一个活动我正在解析一些xml数据,所以暂时解析完成后我想显示一个循环加载效果.

android progress

19
推荐指数
3
解决办法
5万
查看次数

Backgroundworker不会报告进度

我有一个运行长数据库任务的后台工作程序.我想在任务运行时显示进度条.不知何故,后台工作人员不会报告任务的进度.

这就是我所拥有的:

BackgroundWorker _bgwLoadClients;

_bgwLoadClients = new BackgroundWorker();
_bgwLoadClients.WorkerReportsProgress = true;
_bgwLoadClients.DoWork += new DoWorkEventHandler(_bgwLoadClients_DoWork);
_bgwLoadClients.RunWorkerCompleted += new RunWorkerCompletedEventHandler(_bgwLoadClients_RunWorkerCompleted);
_bgwLoadClients.ProgressChanged += new ProgressChangedEventHandler(_bgwLoadClients_ProgressChanged);
_bgwLoadClients.RunWorkerAsync(parms);

private void _bgwLoadClients_DoWork(object sender, DoWorkEventArgs e)
{
    DataTable dt = getdate();
    e.Result = dt;
}

void _bgwLoadClients_ProgressChanged(object sender, ProgressChangedEventArgs e)
{
    progressBar1.Value = e.ProgressPercentage;
}
Run Code Online (Sandbox Code Playgroud)

我在WPF中这样做,但我想它不会有所作为.

提前致谢

c# wpf progress backgroundworker

18
推荐指数
2
解决办法
3万
查看次数