ファイルをアップロードするときに、一時ファイルに変換して一時フォルダに格納し、一時ファイルを読み込んで画像の高さ幅を確認し、後でdatabseに格納する必要があります私は画像として一時ファイルを読むときにエラーが発生します。メモリ不足のため、以下は私のコード全体です。ファイルの処理#
string img = System.Windows.Forms.Application.StartupPath [email protected]"\"+ path;
//in path .png file is accessed.
string filename = Path.GetFileName(img);
string internetCache = Environment.GetFolderPath(Environment.SpecialFolder.InternetCache);
string [email protected]"\tmp";
if (!Directory.Exists(IEPath))
Directory.CreateDirectory(IEPath);
FileInfo fi = new FileInfo(img);
FileStream fs = fi.OpenRead();
//lResult = URLDownloadToFile(0, img.src, TempFolder & strFileName, 0, 0)
Stream stream = fs;
byte[] buffer = new byte[fs.Length];
stream.Seek(273, SeekOrigin.Begin);
stream.Read(buffer, 0, (int)buffer.Length);
string tempfile = Path.Combine(IEPath, Math.Abs(filename.GetHashCode()) + ".tmp");
File.WriteAllBytes(tempfile, buffer);
fs.Close();
stream.Close();
string _contentType = "application/octet-stream";
FileType Type = FileType.png;
string MimeType = "image/png";
FileStream fst = new FileStream(tempfile, FileMode.Open);
Image _image = System.Drawing.Image.FromStream(fst, true, true);
例外がメモリ不足になっている最後の行。 解決策を見つけるのを手伝ってください。
なぜ最初の273バイトをスキップしていますか? – spender
ファイルを保存して、保存したファイルを開いてデータが正しいことを確認しましたか? –
私はちょうどテストのために与えました。私はファイルを開こうとしませんでした。 – user703526