ファイルをアップロードしようとしています。しかし、私がインターネット上で見つけた資料の多くは、ファイルをサーバ上のフォルダに保存する方法を説明していますが、私の解決策としてはバッファリングが必要でした。出来ますか?ファイルをサーババッファにアップロードしてから、読み込んでクリーンアップします。アップロードするファイルをASP.NETでバッファする方法
私はtelerikコンポーネントを使用しており、Excelファイルの読み込み/読み込みが必要です。
おかげ
ファイルをアップロードしようとしています。しかし、私がインターネット上で見つけた資料の多くは、ファイルをサーバ上のフォルダに保存する方法を説明していますが、私の解決策としてはバッファリングが必要でした。出来ますか?ファイルをサーババッファにアップロードしてから、読み込んでクリーンアップします。アップロードするファイルをASP.NETでバッファする方法
私はtelerikコンポーネントを使用しており、Excelファイルの読み込み/読み込みが必要です。
おかげ
あなたはバイナリストリームを使用するのであれば、関係なく、実行のコンテキストの(リサイズまたは何対asp.netを)それをバッファリングするためのアプローチはかなり一般的です:
public static byte[] ReadFile(string filePath)
{
byte[] buffer;
FileStream fileStream = new FileStream(filePath, FileMode.Open, FileAccess.Read);
try
{
int length = (int)fileStream.Length; // get file length
buffer = new byte[length]; // create buffer
int count; // actual number of bytes read
int sum = 0; // total number of bytes read
// read until Read method returns 0 (end of the stream has been reached)
while ((count = fileStream.Read(buffer, sum, length - sum)) > 0)
sum += count; // sum is a buffer offset for next reading
}
finally
{
fileStream.Close();
}
return buffer;
}
また、このチェックアウト:
をデフォルトのFileUploadコンポーネントはByte[]
としてあなたのファイルを提示します - あなただけMemoryStream
でそれをラップすることができます:
var strm = new MemoryStream(fileUpload.PostedFile.Contents);
// I think its PostedFile.Contents, something like that anyway
私はそうバッファに置くことは彼らは小さなファイルです良いオプション – anishMarokey
ある、と私はそれが最善の解決策ではありません参照フォルダにそれらを投げると思ういけません。しかし、あなたの意見は何ですか? @anishMarokey –