位置: 编程技术 - 正文
推荐整理分享Windows 8技巧:关于windows 8的文件管理 File创建和String Stream Buffer方式读写的(关闭windows怎么关),希望有所帮助,仅作参考,欢迎阅读内容。
文章相关热门搜索词:windows8咋关机,关闭windows,这样您就能安全的关闭计算机,wind8怎么关机,windows8.1怎么关机,关闭windows怎么关,window8怎么关机,win8怎么关电脑,windows8.1怎么关机,内容如对您有帮助,希望把文章链接给更多的朋友!
在本文中我们将学习Windows 8中的文件创建和多种读写方式以及设置文档库访问权限和文件类型的访问。
当然我们需要做以下准备工作:
首先:设置程序允许访问的文件位置为:"库文档",设置方法:点击”Package.appxmanifest“,然后选择”功能“选项卡,在功能列表中勾选”文档库访问“。如下图:
其次:设置程序允许以上文件夹内的文件类型,本实例中设置为txt后缀的文件:设置方法:点击”Package.appxmanifest“,然后选择”声明“选项卡,在可用声明下拉列表中选择”文件类型关联“,点击”添加“按钮,并且在右边的列表中添加”支持的文件类型为.txt,并且设置名称为txt,当然你也可以继续添加允许访问dat文件等,如下图:
准备工作做好了,我们需要创建一个项目,然后写入一下代码进行访问文件以及文件夹,创建文件和读写文件。
Xaml代码:复制代码代码如下:<Grid Background="{StaticResource ApplicationPageBackgroundThemeBrush}"> <!--显示区--> <TextBlock HorizontalAlignment="Left" Margin=",,0,0" TextWrapping="Wrap" Text="文件名:" VerticalAlignment="Top" Height="" Width=""/> <TextBox HorizontalAlignment="Left" Margin=",,0,0" TextWrapping="Wrap" Text="test.txt" VerticalAlignment="Top" Width="" Name="tbFileName"/> <TextBox HorizontalAlignment="Left" Margin=",,0,0" TextWrapping="Wrap" Text="默认需要添加的文件内容" VerticalAlignment="Top" Width="" Name="tbContent"/> <TextBlock HorizontalAlignment="Left" Margin=",,0,0" TextWrapping="Wrap" Text="文件内容:" VerticalAlignment="Top" Height="" Width=""/> <TextBlock HorizontalAlignment="Left" Margin=",,0,0" TextWrapping="Wrap" Text="提示:" VerticalAlignment="Top" Height="" Width="" Name="tb_show"/> <!--创建文件以及普通string写入读取文本--> <Button Content="创建文件" HorizontalAlignment="Left" Margin=",,0,0" Name="btnCreateFile" VerticalAlignment="Top" Click="btnCreateFile_Click"/> <Button Content="写入string文件" HorizontalAlignment="Left" Margin=",,0,0" x:Name="btnWriteFile_Copy" VerticalAlignment="Top" Click="btnWriteFile_Copy_Click"/> <Button Content="读取string文件" HorizontalAlignment="Left" Margin=",,0,0" x:Name="btnReadFile" VerticalAlignment="Top" Click="btnReadFile_Click"/> <!--Buffer方式写入和读取--> <Button Content="写入Buffer数据" HorizontalAlignment="Left" Margin=",,0,0" x:Name="btnWriteBufferFile" VerticalAlignment="Top" Click="btnWriteBufferFile_Click" /> <Button Content="读取Buffer数据" HorizontalAlignment="Left" Margin=",,0,0" x:Name="btnReadBufferFile" VerticalAlignment="Top" Click="btnReadBufferFile_Click"/> <!--Stream方式写入和读取--> <Button Content="写入Stream数据" HorizontalAlignment="Left" Margin=",,0,0" x:Name="btnWriteStreamFile" VerticalAlignment="Top" Click="btnWriteStreamFile_Click" /> <Button Content="读取Stream数据" HorizontalAlignment="Left" Margin=",,0,0" x:Name="btnReadStreamFile" VerticalAlignment="Top" Click="btnReadStreamFile_Click"/> </Grid>cs代码:复制代码代码如下:/// <summary> /// An empty page that can be used on its own or navigated to within a Frame. /// </summary> public sealed partial class MainPage : Page {</p><p> public MainPage() { this.InitializeComponent(); }</p><p> /// <summary> /// Invoked when this page is about to be displayed in a Frame. /// </summary> /// <param name="e">Event data that describes how this page was reached. The Parameter /// property is typically used to configure the page.</param> protected override void OnNavigatedTo(NavigationEventArgs e) { }</p><p> //获取“库文档”文件夹 StorageFolder storageFolder = KnownFolders.DocumentsLibrary;</p><p> //创建文件以及普通string写入读取文本 private async void btnCreateFile_Click(object sender, RoutedEventArgs e) { StorageFile sf= await storageFolder.CreateFileAsync(this.tbFileName.Text.Trim(), CreationCollisionOption.ReplaceExisting); tb_show.Text = "提示:创建了文件--" + this.tbFileName.Text.Trim(); }</p><p> private async void btnWriteFile_Copy_Click(object sender, RoutedEventArgs e) { try { string writestr = this.tbContent.Text.Trim() + "text方式"; StorageFile sf = await storageFolder.GetFileAsync(this.tbFileName.Text.Trim()); await FileIO.WriteTextAsync(sf, writestr); tb_show.Text = "提示:文件写入成功,写入内容为-“" + writestr + "”"; } catch (Exception ex) { tb_show.Text = "提示:未找到该文件,请先创建文件"; } }</p><p> private async void btnReadFile_Click(object sender, RoutedEventArgs e) { try { StorageFile sf = await storageFolder.GetFileAsync(this.tbFileName.Text.Trim()); string filecontent= await FileIO.ReadTextAsync(sf,UnicodeEncoding.Utf8); tb_show.Text = "提示:文件以string方式读取成功,读取的内容为-“" + filecontent+"”"; } catch (Exception ex) { tb_show.Text = "提示:未找到该文件,请先创建文件"; } } //Buffer方式写入和读取 private async void btnWriteBufferFile_Click(object sender, RoutedEventArgs e) { try { string writestr = this.tbContent.Text.Trim() + "buffer方式"; StorageFile sf = await storageFolder.GetFileAsync(this.tbFileName.Text.Trim()); IBuffer buffer = GetBufferFromString(writestr); await FileIO.WriteBufferAsync(sf, buffer); tb_show.Text = "提示:文件写入成功,写入内容为-“" + writestr + "”"; } catch (Exception ex) { tb_show.Text = "提示:未找到该文件,请先创建文件"; } }</p><p> private async void btnReadBufferFile_Click(object sender, RoutedEventArgs e) { StorageFile sf = await storageFolder.GetFileAsync(this.tbFileName.Text.Trim()); IBuffer buffer = await FileIO.ReadBufferAsync(sf); using (DataReader dataReader = DataReader.FromBuffer(buffer)) { string filecontent = dataReader.ReadString(buffer.Length); tb_show.Text = "提示:文件以Buffer方式读取成功,读取的内容为-“" + filecontent + "”"; } }</p><p> //将String转为Buffer private IBuffer GetBufferFromString(String str) { using (InMemoryRandomAccessStream memoryStream = new InMemoryRandomAccessStream()) { using (DataWriter dataWriter = new DataWriter(memoryStream)) { dataWriter.WriteString(str); return dataWriter.DetachBuffer(); } } }</p><p> //Stream方式写入和读取 private async void btnWriteStreamFile_Click(object sender, RoutedEventArgs e) { try { string writestr = this.tbContent.Text.Trim() + "Stream方式"; StorageFile sf = await storageFolder.GetFileAsync(this.tbFileName.Text.Trim()); using (StorageStreamTransaction transaction = await sf.OpenTransactedWriteAsync()) { using (DataWriter dataWriter = new DataWriter(transaction.Stream)) { dataWriter.WriteString(writestr); transaction.Stream.Size = await dataWriter.StoreAsync(); // reset stream size to override the file await transaction.CommitAsync(); tb_show.Text = "提示:文件写入成功,写入内容为-“" + writestr + "”"; } } } catch (Exception ex) { tb_show.Text = "提示:未找到该文件,请先创建文件"; } }</p><p> private async void btnReadStreamFile_Click(object sender, RoutedEventArgs e) { StorageFile sf = await storageFolder.GetFileAsync(this.tbFileName.Text.Trim()); using (IRandomAccessStream readStream = await sf.OpenAsync(FileAccessMode.Read)) { using (DataReader dataReader = new DataReader(readStream)) { UInt size = readStream.Size; if (size <= UInt.MaxValue) { UInt numBytesLoaded = await dataReader.LoadAsync((UInt)size); string filecontent = dataReader.ReadString(numBytesLoaded); tb_show.Text = "提示:文件以Stream方式读取成功,读取的内容为-“" + filecontent + "”"; } } } } } 如需源码请点击 Win8File_gimoonet.rar 下载。VS+Windows8开发。
Windows 8技巧:windows 8文件 文件夹管理[文件以及文件夹操作] 在本文中我们将学习win8中的文件以及文件夹的各种操作。在本文中文件操作主要是讲述:删除文件/移动文件/复制文件/重命名文件文件夹操作分为:读
win8中文版电脑升级教程(图文) 现在去电子商场你会发现很多品牌机都已经预装了最新的Win8操作系统。在中国,市面上大多数OEM品牌机新机预装的都是Windows8中文版操作系统。查看计
win8启动后自动进入传统桌面(避开Metro)设置教程 对于预览版的Windows8系统,每天启动电脑后的第一件事就是从Metro开始屏幕上点击桌面回到传统界面,久而久之,就感觉十分麻烦。虽然Metro开始屏幕给
标签: 关闭windows怎么关
本文链接地址:https://www.jiuchutong.com/biancheng/363785.html 转载请保留说明!上一篇:Windows 8技巧:Windows 8 中的Toast Tile Badge通知的使用方法 (windows 8)
下一篇:Windows 8技巧:windows 8文件 文件夹管理[文件以及文件夹操作] (windows8使用技巧)
友情链接: 武汉网站建设