タイトルのとおり、 Silverlight SaveFileDialogでファイルのコンテンツタイプを設定する方法はありますか?私は道を見いださなかったし、それが不可能ならば驚くことではない。確かに誰かが確かに知っているかどうか聞いてみると思った。シルバーライトでファイルのコンテンツタイプを設定します。SaveFileDialog
0
A
答えて
0
this.dialog = new SaveFileDialog();
try
{
this.dialog.DefaultExt = ".txt";
this.dialog.Filter = "Text Files|*.txt|Log Files|*.log|All Files|*.*";
this.dialog.FilterIndex = 2;
}
catch (Exception ex)
{
this.tblError.Text = "Error configuring SaveFileDialog: " + ex.Message;
}
1
あなたが探しているのは、アップロードされたファイルのMimeタイプです。私はこれがSilverlightで動作するだろうと推測しています。しかし、私はその理由でそれを使用したことはありません。次のように追加する必要があります。
using System.Reflection;
using System.Runtime.InteropServices;
[System.Runtime.InteropServices.DllImport(@"urlmon.dll", CharSet = CharSet.Auto)]
private extern static System.UInt32 FindMimeFromData(
System.UInt32 pBC,
[MarshalAs(UnmanagedType.LPStr)] System.String pwzUrl,
[MarshalAs(UnmanagedType.LPArray)] byte[] pBuffer,
System.UInt32 cbSize,
[MarshalAs(UnmanagedType.LPStr)] System.String pwzMimeProposed,
System.UInt32 dwMimeFlags,
out System.UInt32 ppwzMimeOut,
System.UInt32 dwReserverd
);
public void SomeMethod(string fileName)
{
string mimeType = getMimeFromFile(fileName);
if (mimeType == "text/plain")
{
// do something
}
}
private string getMimeFromFile(string filename)
{
if (!File.Exists(filename))
throw new FileNotFoundException(filename + " not found");
byte[] buffer = new byte[256];
using (FileStream fs = new FileStream(filename, FileMode.Open))
{
if (fs.Length >= 256)
fs.Read(buffer, 0, 256);
else
fs.Read(buffer, 0, (int)fs.Length);
}
try
{
System.UInt32 mimetype;
FindMimeFromData(0, null, buffer, 256, null, 0, out mimetype, 0);
System.IntPtr mimeTypePtr = new IntPtr(mimetype);
string mime = Marshal.PtrToStringUni(mimeTypePtr);
Marshal.FreeCoTaskMem(mimeTypePtr);
return mime;
}
catch (Exception ex)
{
return ex.Message;
}
}
関連する問題
- 1. 「コンテンツタイプ:アプリケーション/ PDF」を無視し、「コンテンツタイプを設定:アプリケーション/ octet-streamのは
- 2. send_fileでコンテンツタイプを設定する
- 3. s3のmp4ファイルのコンテンツタイプを設定する
- 4. ブロブにコンテンツタイプを設定
- 5. Express:パス/ファイルに基づいてコンテンツタイプを設定していますか?
- 6. WSE 3.0でのコンテンツタイプの設定
- 7. S3でのAWSコンテンツタイプの設定Boto3を使用して
- 8. SaveFileDialog特定の拡張子を持つファイルのみを表示
- 9. Wgetを使用してダウンロードするファイルのコンテンツタイプを指定できますか?
- 10. Drupalコンテンツタイプのエディションでワークフローの設定が見えません
- 11. コンテンツタイプ= "application/json"の設定方法は?
- 12. WCF 4.0 Restサービス設定のコンテンツタイプ
- 13. はコンテンツタイプを 'application/json'に設定できませんjs 2
- 14. Rubyで設定ファイルを探します
- 15. node.js jade - jadeでコンテンツタイプを設定するには
- 16. ジャージーRESTクライアントでコンテンツタイプ/エンコーディングを設定する
- 17. Zend_HTTP_Client - PUTでコンテンツタイプを設定する方法は?
- 18. ファイルのコンテンツタイプをURLで確認していますか?
- 19. PHP cURLのコンテンツタイプが設定されていません
- 20. WP7の紺色のコンテンツタイプを画像に設定する
- 21. C#を使用してSaveFileDialogで最上位を設定するにはどうすればよいですか?
- 22. 特定のフォルダ内のC#SaveFileDialog
- 23. Visual Studioで新しい設定用の設定ファイルを追加します
- 24. saveFileDialog:ファイル名が正しくありません
- 25. AMFPHPのコンテンツタイプをcURLで指定する
- 26. 設定ファイルでSoapHttpClientProtocol Timeoutプロパティを設定できますか?
- 27. JSONを使用してJSONを投稿し、HTTPコンテンツタイプを設定する - 'application/json'
- 28. save saveFileDialog
- 29. WPFのSaveFileDialogバグ
- 30. .iniファイルのコンテンツタイプとは何ですか?
これはフィルタを設定することです。私は、アプリケーションをホストしているブラウザがどのようなコンテンツタイプであるかを知りたい。 – MrW