01.
using
System.IO;
02.
using
System.Threading.Tasks;
03.
using
Windows.Storage;
04.
05.
06.
namespace
myPhoneApp
07.
{
08.
09.
public
partial
class
MainPage : PhoneApplicationPage
10.
{
11.
12.
public
MainPage()
13.
{
14.
InitializeComponent();
15.
}
16.
17.
18.
private
async
void
btnWrite_Click(
object
sender, RoutedEventArgs e)
19.
{
20.
await WriteToFile();
21.
22.
23.
this
.btnWrite.IsEnabled =
false
;
24.
this
.btnRead.IsEnabled =
true
;
25.
}
26.
27.
private
async Task WriteToFile()
28.
{
29.
30.
byte
[] fileBytes = System.Text.Encoding.UTF8.GetBytes(
this
.textBox1.Text.ToCharArray());
31.
32.
33.
StorageFolder local = Windows.Storage.ApplicationData.Current.LocalFolder;
34.
35.
36.
var dataFolder = await local.CreateFolderAsync(
"DataFolder"
,
37.
CreationCollisionOption.OpenIfExists);
38.
39.
40.
var file = await dataFolder.CreateFileAsync(
"DataFile.txt"
,
41.
CreationCollisionOption.ReplaceExisting);
42.
43.
44.
using
(var s = await file.OpenStreamForWriteAsync())
45.
{
46.
s.Write(fileBytes, 0, fileBytes.Length);
47.
}
48.
}
49.
50.
51.
private
async
void
btnRead_Click(
object
sender, RoutedEventArgs e)
52.
{
53.
await ReadFile();
54.
55.
56.
this
.btnWrite.IsEnabled =
true
;
57.
this
.btnRead.IsEnabled =
false
;
58.
}
59.
60.
private
async Task ReadFile()
61.
{
62.
63.
StorageFolder local = Windows.Storage.ApplicationData.Current.LocalFolder;
64.
65.
if
(local !=
null
)
66.
{
67.
68.
var dataFolder = await local.GetFolderAsync(
"DataFolder"
);
69.
70.
71.
var file = await dataFolder.OpenStreamForReadAsync(
"DataFile.txt"
);
72.
73.
74.
using
(StreamReader streamReader =
new
StreamReader(file))
75.
{
76.
this
.textBlock1.Text = streamReader.ReadToEnd();
77.
}
78.
79.
}
80.
}
81.
82.
83.
}
84.
}