您的位置:首页 > 财经 > 金融 > 东莞哪里可以学网络营销_新冠疫情最新官方消息_google推广服务商_小程序开发平台有哪些

东莞哪里可以学网络营销_新冠疫情最新官方消息_google推广服务商_小程序开发平台有哪些

2025/4/13 7:02:24 来源:https://blog.csdn.net/weixin_43050480/article/details/147156681  浏览:    关键词:东莞哪里可以学网络营销_新冠疫情最新官方消息_google推广服务商_小程序开发平台有哪些
东莞哪里可以学网络营销_新冠疫情最新官方消息_google推广服务商_小程序开发平台有哪些

C# winform根据EXCEL匹配文件后将txt的图片分别下载到指定的文件夹里

1、EXCEL文件ID
在这里插入图片描述
2、生成的文件夹
在这里插入图片描述

 showinthz = showinthz + creatpath.Count;//string fNamestr = Path.GetFileNameWithoutExtension(path);//string[] sstr1 = fNamestr.Split('_');string directoryPath = Path.GetDirectoryName(input_Excel.Text);var filesData = new List<FileContent>();//处理并生成处理文件var processor = new ParallelFileProcessor();var tasks = new List<FolderTask>();List<string> strhttp = new List<string>();List<string> nostr = new List<string>();string[] allLines = File.ReadAllLines(filepath, Encoding.GetEncoding("GBK"));List<string> linesList = allLines.ToList();List<string> linesonrcout = new List<string>();//排除重复后再判断foreach (var line in linesList){string specialPrefix = "&*&*&*&*";bool startsWithSpecialPrefix = line.StartsWith(specialPrefix);if (!startsWithSpecialPrefix){bool isContained = linesonrcout.Contains(line);if (!isContained){linesonrcout.Add(line);}}}allLines = linesonrcout.ToArray();if (allLines.Length < 3){string pteh = Path.GetFileName(filepath);string[] ssrt = pteh.Split('_');var row = new DataGridViewRow();row.CreateCells(dgvdata_Err_show);row.Cells[0].Value = showintkk;showintkk++;row.Cells[1].Value = ssrt[0];row.Cells[2].Value = allLines.Length;await Task.Run(() =>{this.dgvdata_Err_show.BeginInvoke((MethodInvoker)delegate{dgvdata_Err_show.Rows.Add(row);});});//string pteh = Path.GetFileName(filepath);//string[] ssrt = pteh.Split('_');//加入视图看//Show_Err_list.Items.Add(ssrt[0] + "---行数:" + allLines.Length.ToString());}foreach (string line in allLines){string specialPrefix = "&*&*&*&*";bool startsWithSpecialPrefix = line.StartsWith(specialPrefix);if (!startsWithSpecialPrefix){string pattern = "http";Regex regex = new Regex(pattern);Match match = regex.Match(line);if (match.Success){if (!strhttp.Contains(line)){strhttp.Add(line);//待随机的有效链接队列}}else{if (!nostr.Contains(line)){nostr.Add(line);//待随机的无链接的队列}}}} //按顺序分别把带连接的和不带链接的放进去listList<string> sshucun = new List<string>();//存放最后一次http乱序的结果List<string> sshucunt1 = new List<string>();//存放不是http最后一次乱序的连接int cc = 0;int wenjian = 1;foreach (string creatname in creatpath){jinduadd++;//创建文件夹并乱序string Fname = directoryPath + "\\" + "生成的文件\\" + creatname;if (!Directory.Exists(Fname)){Directory.CreateDirectory(Fname);}var shuffler = new ConditionalShuffler();try{if (cc == 0){#region 处理第一次连接的数组if (strhttp.Count > 2){var shuffled = shuffler.ShuffleWithCondition(strhttp);sshucun = shuffled;}else{sshucun = strhttp;}foreach (string s in sshucun){if (!string.IsNullOrEmpty(s)){string wenjianname = Fname + "\\" + wenjian;if (!Directory.Exists(wenjianname)){Directory.CreateDirectory(wenjianname);string specialPrefix1 = "&*&*&*&*";bool startsWithSpecialPrefix1 = s.StartsWith(specialPrefix1);if (!startsWithSpecialPrefix1){FolderTask tts = new FolderTask();//tasks.Add(new FolderTask { TargetPath = wenjianname, Contentxt = PingJia, });var matches = Regex.Matches(s, @"&*\*&*\*&*\*&*\*(.*?)&*\*&*\*&*\*&*\*");string[] pjstr = s.Split(new[] { "&*&*&*&*" }, StringSplitOptions.RemoveEmptyEntries);if (pjstr.Length >= 1){string PingJia = pjstr[0].ToString();//评价string filePath = wenjianname + "\\" + "评价.txt";//SafeWriteFile(filePath, PingJia);//await Task.Run(() => { File.WriteAllText(filePath, PingJia, Encoding.UTF8); });tts.TargetPath = wenjianname;tts.Contentxt = PingJia;//File.WriteAllText(filePath, PingJia, Encoding.UTF8);};int imcout = 1;int imgname = 1;foreach (Match match in matches){string kk = match.ToString();string pattern = "----";Regex regex1 = new Regex(pattern);Match match1 = regex1.Match(kk);if (match1.Success){var urls = match.Groups[1].Value.Split(new[] { "----" }, StringSplitOptions.RemoveEmptyEntries);//var converter = new ImageDownloader();foreach (var item in urls){if (item.Trim() != ""){string imnamepath = wenjianname + "\\" + imgname + ".jpg";listtupian.Add(item);tts.ImageUrls.Add(item);tts.ImageUrlspath.Add(imnamepath);//await converter.DownloadImageAsync(item, imnamepath, _httpClient);imgname++;}}}else{var urls = match.Groups[1].Value.Split(new[] { "" }, StringSplitOptions.RemoveEmptyEntries);//var converter = new ImageDownloader();foreach (var item in urls){if (item.Trim() != ""){string imnamepath = wenjianname + "\\" + imgname + ".jpg";listtupian.Add(item);tts.ImageUrls.Add(item);tts.ImageUrlspath.Add(imnamepath);//await converter.DownloadImageAsync(item, imnamepath, _httpClient);imgname++;}}}imcout++;}tasks.Add(tts);}}}wenjian++;}#endregion#region 处理没有链接的数组if (nostr.Count > 2){var shuffled2 = shuffler.ShuffleWithCondition(nostr);sshucunt1 = shuffled2;}else{sshucunt1 = nostr;}//处理不带http的foreach (string ss in sshucunt1){if (!string.IsNullOrEmpty(ss)){string wenjianname = Fname + "\\" + wenjian;if (!Directory.Exists(wenjianname)){Directory.CreateDirectory(wenjianname);string specialPrefix2 = "&*&*&*&*";bool startsWithSpecialPrefix2 = ss.StartsWith(specialPrefix2);if (!startsWithSpecialPrefix2){FolderTask tts = new FolderTask();var matches = Regex.Matches(ss, @"&*\*&*\*&*\*&*\*(.*?)&*\*&*\*&*\*&*\*");string[] pjstr = ss.Split(new[] { "&*&*&*&*" }, StringSplitOptions.RemoveEmptyEntries);if (pjstr.Length >= 1){string PingJia = pjstr[0].ToString();//评价string filePath = wenjianname + "\\" + "评价.txt";tts.TargetPath = wenjianname;tts.Contentxt = PingJia;//SafeWriteFile(filePath, PingJia);//await Task.Run(() => { File.WriteAllText(filePath, PingJia, Encoding.UTF8); });//File.WriteAllText(filePath, PingJia, Encoding.UTF8);};tasks.Add(tts);}}}wenjian++;}#endregioncc = 1;}else{wenjian = 1;//处理二次集合的连接数据if (sshucun.Count > 2){var shuffled = shuffler.ShuffleWithCondition(sshucun);sshucun = shuffled;}foreach (string s in sshucun){if (!string.IsNullOrEmpty(s)){string wenjianname = Fname + "\\" + wenjian;if (!Directory.Exists(wenjianname)){Directory.CreateDirectory(wenjianname);string specialPrefix1 = "&*&*&*&*";bool startsWithSpecialPrefix1 = s.StartsWith(specialPrefix1);if (!startsWithSpecialPrefix1){FolderTask tts = new FolderTask();var matches = Regex.Matches(s, @"&*\*&*\*&*\*&*\*(.*?)&*\*&*\*&*\*&*\*");string[] pjstr = s.Split(new[] { "&*&*&*&*" }, StringSplitOptions.RemoveEmptyEntries);if (pjstr.Length >= 1){string PingJia = pjstr[0].ToString();//评价string filePath = wenjianname + "\\" + "评价.txt";tts.TargetPath = wenjianname;tts.Contentxt = PingJia;//SafeWriteFile(filePath, PingJia);//await Task.Run(() => { File.WriteAllText(filePath, PingJia, Encoding.UTF8); });//File.WriteAllText(filePath, PingJia, Encoding.UTF8);};int imcout = 1;int imgname = 1;foreach (Match match in matches){string kk = match.ToString();string pattern = "----";Regex regex1 = new Regex(pattern);Match match1 = regex1.Match(kk);if (match1.Success){var urls = match.Groups[1].Value.Split(new[] { "----" }, StringSplitOptions.RemoveEmptyEntries);var converter = new ImageDownloader();foreach (var item in urls){string imnamepath = wenjianname + "\\" + imgname + ".jpg";listtupian.Add(item);tts.ImageUrls.Add(item);tts.ImageUrlspath.Add(imnamepath);//await converter.DownloadImageAsync(item, imnamepath, _httpClient);imgname++;}}else{var urls = match.Groups[1].Value.Split(new[] { "" }, StringSplitOptions.RemoveEmptyEntries);var converter = new ImageDownloader();foreach (var item in urls){string imnamepath = wenjianname + "\\" + imgname + ".jpg";listtupian.Add(item);tts.ImageUrls.Add(item);tts.ImageUrlspath.Add(imnamepath);//await converter.DownloadImageAsync(item, imnamepath, _httpClient);imgname++;}}imcout++;}tasks.Add(tts);}}}wenjian++;}//处理二次集合没有链接的数据if (sshucunt1.Count > 2){var shuffled2 = shuffler.ShuffleWithCondition(sshucunt1);sshucunt1 = shuffled2;}//处理不带http的foreach (string ss in sshucunt1){if (!string.IsNullOrEmpty(ss)){string wenjianname = Fname + "\\" + wenjian;if (!Directory.Exists(wenjianname)){Directory.CreateDirectory(wenjianname);string specialPrefix2 = "&*&*&*&*";bool startsWithSpecialPrefix2 = ss.StartsWith(specialPrefix2);if (!startsWithSpecialPrefix2){FolderTask tts = new FolderTask();var matches = Regex.Matches(ss, @"&*\*&*\*&*\*&*\*(.*?)&*\*&*\*&*\*&*\*");string[] pjstr = ss.Split(new[] { "&*&*&*&*" }, StringSplitOptions.RemoveEmptyEntries);if (pjstr.Length >= 1){string PingJia = pjstr[0].ToString();//评价string filePath = wenjianname + "\\" + "评价.txt";tts.TargetPath = wenjianname;tts.Contentxt = PingJia;//SafeWriteFile(filePath, PingJia);//await Task.Run(() => { File.WriteAllText(filePath, PingJia, Encoding.UTF8); });//File.WriteAllText(filePath, PingJia, Encoding.UTF8);};tasks.Add(tts);}}}wenjian++;}}await processor.ProcessFoldersAsync(tasks);//MessageBox.Show("已完成!");//btn_Creat.Enabled = true;}catch (Exception){throw;}}//lbl_showlbl;this.lbl_showlbl.BeginInvoke((MethodInvoker)async delegate{lbl_showlbl.Text = "生成进度:" + jinduadd + "/" + showinthz;});

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com