在本地磁盘中的一个文件夹中有一些jpg文件。我想把这些文件写入到avi视频文件。现在是用for询问一张一张的写。代码如下
        /// <summary>
        /// 获得临时截取的屏幕图片,生成avi
        /// </summary>
        private void AviSaveAs()
        {
            try
            {
                FileInfo[] dinfo = DInfo.GetFiles();
                Array.Sort<FileInfo>(dinfo, new FIleLastTimeComparer());
                for (int i = 0; i < dinfo.Length; i++)
                {
                 //获得图像
                    Bitmap cache = new Bitmap(m_pictureFileName + "\\" + dinfo[i].ToString());
                 //由于转化为avi后呈现相反,所以翻转
                    cache.RotateFlip(RotateFlipType.Rotate180FlipX);
                 //载入图像
                    m_aviWriter.AddFrame(cache);
                }
            }
            catch (Exception ex)
            {
                MessageBox.Show("写入文件失败!");
            }
        }图片有的时候很多。大小通常在100k到200k之间。在AddFrame的时候也会慢一点。
我在想用什么方法能快一点。我有一个思路不知道可以否。
用多线程。一个线程写一部分文件,然后生成一个avi。也就是说几个线程在写最后就生成几个avi。然后最后在总体合并成一个avi 。这样可以吗?? 或者有什么别的方法。谢谢了。