• 博客园logo
  • 会员
  • 众包
  • 新闻
  • 博问
  • 闪存
  • 赞助商
  • HarmonyOS
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录
手写的从前
博客园    首页    新随笔    联系   管理    订阅  订阅

Windows Phone 八、文件读写IO

文件存储的类型
•本地应用文件:
•ApplicationData.Current.LocalFolder;
•漫游应用文件:
•ApplicationData.Current.RoamingFolder;
•临时应用文件:
•ApplicationData.Current.TemporaryFolder;
文件IO
 1     <StackPanel>
 2         <StackPanel Orientation="Horizontal">
 3             <Button 
 4             x:Name="btnSave"
 5             Content="Save"
 6             Click="btnSave_Click"/>
 7             <Button
 8                 x:Name="btnGet"
 9                 Content="Get"
10                 Click="btnGet_Click"/>
11         </StackPanel>
12         <TextBlock x:Name="txt" Height="500"/>
13     </StackPanel>
 1 //拿到本地文件夹对象
 2         StorageFolder folder = ApplicationData.Current.LocalFolder;
 3         private async void btnSave_Click(object sender, RoutedEventArgs e)
 4         {
 5             //写入操作
 6             var text = txt.Text;
 7             //通过文件夹创建文件
 8             var file = await folder.CreateFileAsync("temp.txt", CreationCollisionOption.ReplaceExisting);
 9             //写入文本到文件中,仅适用于小文件写入
10             //await FileIO.AppendTextAsync(file, text);//小文件读写
11 
12             //使用文件流的形式写入文件
13             using (var stream = await file.OpenStreamForWriteAsync())
14             {
15                 using (var writer = new StreamWriter(stream))
16                 {
17                     await writer.WriteAsync(text);
18                 }
19             }
20         }
21         private async void btnGet_Click(object sender, RoutedEventArgs e)
22         {
23             //打开一个现有文件,注意:没有文件则报异常
24             var file = await folder.GetFileAsync("temp.txt");
25             //var text = await FileIO.ReadTextAsync(file);
26             //txt.Text = text;
27 
28             //使用文件流去读取文件
29             using (var stream = await file.OpenStreamForReadAsync())
30             {
31                 using (var reader = new StreamReader(stream))
32                 {
33                     txt.Text = await reader.ReadToEndAsync();
34                 }
35             }
36         }
拷贝和剪切

//获取本地文件夹对象

var localFolder = ApplicationData.Current.LocalFolder;

//根据文件名获取文件对象

var file = await localFolder.GetFileAsync("temp.txt");

//拷贝目标文件夹

var myFolder = await localFolder.CreateFolderAsync("MyFolder", CreationCollisionOption.OpenIfExists);

//拷贝到制定文件夹

var newFile = await file.CopyAsync(myFolder, "new.txt",NameCollisionOption.ReplaceExisting);

//移动到新路径

await file.MoveAsync(myFolder);

删除和重命名

//获取本地文件夹对象

var localFolder = ApplicationData.Current.LocalFolder;

//根据文件名获取文件对象

var file = await localFolder.GetFileAsync("temp.txt");

//对文件进行重命名操作

await file.RenameAsync("temp2.txt");

//删除文件

await file.DeleteAsync();

 

posted @ 2015-06-16 16:04  手写从前  阅读(230)  评论(0)    收藏  举报
刷新页面返回顶部
博客园  ©  2004-2025
浙公网安备 33010602011771号 浙ICP备2021040463号-3