因为Silverlight是运行在浏览器中的客户端,所以对于程序的操作权限要求比较严格,以本篇的主题来说,一个表现就是不能够随意的进行文件打开和保存操作,如果在代码中直接使用Stream来操作文件,会报权限不足的异常。但是Silverlight并不是不能操作文件,如果需要打开和保存文件,需要使用Silverlight提供的打开和保存文件对话框。

打开文件对话框:

OpenFileDialog openDlg = new OpenFileDialog();
openDlg.Filter = "文本文件 (*.txt)|*.txt|所有文件 (*.*)|*.*";
if (openDlg.ShowDialog() == true)
{
using (FileStream fs = openDlg.File.Open(FileMode.Open, FileAccess.Read))
{
//相关的文件读取操作
}
}

使用OpenFileDialog类来创建对象,使用其Filter属性设置文件筛选类型,然后使用ShowDialog打开对话框。

最重要的是要使用openDlg的File属性的Open方法来获取文件的流。

保存文件对话框:

SaveFileDialog saveDlg = new SaveFileDialog();
saveDlg.Filter = "文本文件 (*.txt)|*.txt|所有文件 (*.*)|*.*";
if (saveDlg.ShowDialog() == true)
{
using (Stream fs = saveDlg.OpenFile())
{
//相关文件写入操作
}
}

保存文件与打开文件其实差不多,不同的是使用SaveFileDialog来创建对象,而保存的文件流是直接通过saveDlg上的OpenFile方法来获取文件的流。

silverlight打开和保存文件的更多相关文章

  1. [No0000192]Vim打开和保存文件-Vim使用技巧(7)

    使用Vim打开和保存文件是最常用的操作,介绍使用edit命令通过文件路径来打开文件,使用write命令保存文件,当文件路径不存在或用户权限不匹配时,使用write命令调用外部shell程序完成操作. ...

  2. 12.JAVA之GUI编程打开与保存文件

    功能:java图形用户界面开发,练习打开保存文件 代码如下: import java.awt.FileDialog; import java.awt.Frame; import java.awt.Me ...

  3. C#用openfiledialog文件和savefileDialog打开和保存文件

    一 打开文件 Stream myStream = null; OpenFileDialog openFileDialog1 = new OpenFileDialog(); openFileDialog ...

  4. #用openfiledialog文件和savefileDialog打开和保存文件

    一.打开文件 Stream myStream = null;            OpenFileDialog openFileDialog1 = new OpenFileDialog();     ...

  5. VIM之打开、保存文件

    如何使用命令 在Normal mode下,输入':'字符,在GVIM界面左下可以看到如图所示的界面: 这时候可以键入命令,输入完后按下键盘上的Enter键即可执行命令. 打开文件 使用命令:e [文件 ...

  6. c# 打开、保存文件对话框 和 文件夹选择对话框

    1. OpenFileDialog openImageDialog = new OpenFileDialog(); openImageDialog.Filter = "Image Files ...

  7. pyqt5最简单的打开和保存文件

    import sys import os from PyQt5.QtWidgets import QApplication,QWidget,QFileDialog from t import Ui_F ...

  8. C#线程安全打开/保存文件对话框

    在多线程单元模式(MTA)中为应用程序使用.NET OpenFileDialog和SaveFileDialog 下载FileDialogsThreadAppartmentSafe_v1.zip 如果您 ...

  9. xpython在Windos下的安装及简单的文本打开、保存

    前几天写自动化部署脚本,用的是paramiko和shell相结合,paramiko可是实现ssh登录,文件及文件夹的上传下载,这些功能,然后一直想自己写个东西出来,于是就想把这些功能我把他放到图形化界 ...

随机推荐

  1. [CSS3] Parent relative and child absoulte

    如果在一个容器中的子元素使用了position:absolute, 那么他可能会跑出父元素的框架范围. 如果想限定子元素在付元素的框架范围,可以在父元素上加position:relative; 对于一 ...

  2. Android的View和ViewGroup分析

    1. 概念 Android中的View与我们曾经理解的"视图"不同.在Android中,View比视图具有更广的含义,它包括了用户交互和显示,更像Windows操作系统中的wind ...

  3. ArcEngine中的缩放地图

    在ArcEngine地图操作中,缩放地图的功能经常用到,这里做一个小结. 缩放地图一般可分为以下几种情况: 1.缩放地图:与放大地图相对,一般是手动绘制区域或固定比例缩放,可调用命令或Expand函数 ...

  4. web.xml不同版本的头

    web.xml v2.3 <?xml version="1.0" encoding="ISO-8859-1"?> <!DOCTYPE web- ...

  5. windows系统上安装Redis,并且设置Redis密码

    一.Windows版本的Redis下载 下载地址:https://github.com/MSOpenTech/redis/releases 我下载的是最新版的3.2 二.安装Redis 我下载的是安装 ...

  6. WebService 之 已超过传入消息(65536)的最大消息大小配额。若要增加配额,请使用相应绑定元素上的 MaxReceivedMessageSize 属性。

    在使用 WCF 中,遇到如下问题: 已超过传入消息(65536)的最大消息大小配额.若要增加配额,请使用相应绑定元素上的 MaxReceivedMessageSize 属性. 问题说明: 客户端调用 ...

  7. 【读书笔记】Flickr 网站用户标签的质量控制对策

    1.一些背景 标签技术重要意义 标签技术如今已经被广泛应用于包括网络书签.博客.播客.视频分享等在内的多种 Web2. 0 服务 Flickr简介 Flickr 是一集图片存放 交友 组群 邮件等功能 ...

  8. C# Console 运行之后最小化到状态栏

    static void Main(string[] args) { new ConsoleCtrl(); Console.Read(); } class ConsoleCtrl { [DllImpor ...

  9. Excel还是那些事

        文章来源:刘俊涛的博客 欢迎关注,有问题一起学习欢迎留言.评论

  10. validationEngine 表单验证插件使用

    废话少说,直接上代码,可拷贝直接运行: <!DOCTYPE html> <html lang="zh"> <head> <meta cha ...