|
分類:[C#]
ボタンクリックで画像を保存したいんですが、 ソースコードから正規表現を利用して「src=""」の「""」の中身を取得して WebClientで保存しようとしたのですが、以下のコードだと エラーは出てないみたいなんですが、保存はされないみたいです。 textBox1.Textは、ソースコードです。 できれば、保存する際に場所を指定したいのですがちょっとわからなくなってしまいました。
ご助言お願いします。
private void ImageSave_Click(object sender, EventArgs e)//画像の保存 { // 「src」を探し出す正規表現を作成 Regex rSRC = new Regex("src\\s*=\\s*(?:\"(?<1>[^\"]*)\"|(?<1>\\S+))", RegexOptions.IgnoreCase | RegexOptions.Compiled);
// Matchを作成 Match mSRC;
// 「src」を探して、それが .jpg .gif .png で終わる場合はファイルを取得 for (mSRC = rSRC.Match(textBox1.Text); mSRC.Success; mSRC = mSRC.NextMatch()) { // 「src=""」の「""」の中身を取得 string val = mSRC.Groups[1].Value;
// 拡張子をチェック if (val.ToLower().EndsWith(".jpg") || val.ToLower().EndsWith(".gif") || val.ToLower().EndsWith(".png")) {
// ローカルディスクに保存するときの名前を作成 string lcfile = val; if (val.IndexOf("/") != -1) { // ファイル名にパスが含まれている場合は取り除く lcfile = val.Substring(val.LastIndexOf("/") + 1); }
WebClient wc = new WebClient(); // ファイルをローカルのカレントディレクトリにダウンロードする wc.DownloadFile(val, lcfile);
} } }
|