Tải bản đầy đủ (.pdf) (46 trang)

Giáo trình c# và NET framework bài 7 8 và 9

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (574.19 KB, 46 trang )

XML in .NE
XML in .NE
T
T
-
-
Editor
Editor
:
:
Đo
Đo
à
à
n Quang
n Quang
Minh
Minh
1
1
C# and .NET Framework
C# and .NET Framework
B
B
à
à
i 7:
i 7:
XML in .NET
XML in .NET
Đo


Đo
à
à
n Quang Minh
n Quang Minh


http
http
://www.VTPortal.net
://www.VTPortal.net
Last update:
Last update:
30. December 2006
30. December 2006
XML in .NE
XML in .NE
T
T
-
-
Editor
Editor
:
:
Đo
Đo
à
à
n Quang

n Quang
Minh
Minh
2
2
M
M


c l
c l


c
c
XML Overview
XML Overview
Đ
Đ


c
c
XML
XML
Ghi
Ghi
XML
XML
DOM

DOM
trong
trong
.NET
.NET


ng
ng
d
d


ng
ng
XML in .NE
XML in .NE
T
T
-
-
Editor
Editor
:
:
Đo
Đo
à
à
n Quang

n Quang
Minh
Minh
3
3
XML Overview
XML Overview
XML l
XML l
à
à
g
g
ì
ì


XML
XML


Extensible Markup Language: ngôn ng
Extensible Markup Language: ngôn ng


đ
đ


nh d

nh d


ng m
ng m


r
r


ng.
ng.


XML đư
XML đư


c đ
c đ


nh ngh
nh ngh
ĩ
ĩ
a b
a b



i w3c (World Wide Web Consortium): t
i w3c (World Wide Web Consortium): t


ch
ch


c
c
m
m


ng to
ng to
à
à
n c
n c


u.
u.


Th
Th



c ch
c ch


t, XML l
t, XML l
à
à
ngôn ng
ngôn ng


t
t


ng qu
ng qu
á
á
t d
t d
ù
ù
ng đ
ng đ


nh ngh

nh ngh
ĩ
ĩ
a d
a d


li
li


u thông
u thông
qua c
qua c
á
á
c th
c th


.
.
Ngôn ng
Ngôn ng


đ
đ



nh d
nh d


ng
ng


Bao
Bao
g
g


m
m
m
m


t
t
t
t


p
p
c

c
á
á
c
c
th
th


,
,
v
v
à
à
d
d


li
li


u
u
ch
ch


a

a
trong
trong
c
c
á
á
c
c
th
th


đ
đ
ó
ó
.
.
V
V
í
í
d
d


,
,
HTML

HTML
l
l
à
à
m
m


t
t
lo
lo


i
i
ngôn
ngôn
ng
ng


đ
đ


nh
nh
d

d


ng
ng
.
.


Trong
Trong
XML,
XML,
c
c
á
á
c
c
th
th


không
không
h
h


n

n
ch
ch
ế
ế
như
như
HTML.
HTML.
Ngư
Ngư


i
i
s
s


d
d


ng
ng
c
c
ó
ó
th

th


t
t


do
do
đ
đ


nh
nh
ngh
ngh
ĩ
ĩ
a
a
c
c
á
á
c
c
th
th



c
c


a
a
m
m
ì
ì
nh
nh
.
.


C
C
á
á
c
c
ưu
ưu
đi
đi


m

m
:
:
D
D


d
d
à
à
ng
ng
trao
trao
đ
đ


i
i
d
d


li
li


u

u
: do
: do
khuôn
khuôn
d
d


ng
ng
XML
XML
r
r


t
t
d
d


hi
hi


u
u
. XML

. XML
còn
còn
đư
đư


c
c
g
g


i
i
l
l
à
à
d
d


li
li


u
u
t

t




t
t


.
.
Kh
Kh


năng
năng
tu
tu


bi
bi
ế
ế
n
n
cao
cao
:

:
vi
vi


c
c
c
c


th
th


ho
ho
á
á
c
c
á
á
c
c
th
th


c

c


a
a
XML
XML
s
s


t
t


o
o
ra
ra
m
m


t
t
lo
lo


t

t
c
c
á
á
c
c
ngôn
ngôn
ng
ng


m
m


i
i
,
,
v
v
í
í
d
d


MML, CML.

MML, CML.
C
C
ó
ó
th
th


lưu
lưu
d
d


li
li


u
u
c
c
ó
ó
c
c


u

u
tr
tr
ú
ú
c
c
:
:
d
d


a
a
trên
trên
vi
vi


c
c
s
s


d
d



ng
ng
c
c
á
á
c
c
th
th


l
l


ng
ng
nhau
nhau
.
.
XML in .NE
XML in .NE
T
T
-
-
Editor

Editor
:
:
Đo
Đo
à
à
n Quang
n Quang
Minh
Minh
4
4
XML Overview
XML Overview
<? xml version=
<? xml version=


1.0
1.0


encoding=
encoding=


UTF
UTF
-

-
8
8


?>
?>
<Document>
<Document>
<Greeting>
<Greeting>
Hello from XML
Hello from XML
</Greeting>
</Greeting>
<Message>
<Message>
Welcome to the wild and woolly world of
Welcome to the wild and woolly world of
XML.
XML.
</Message>
</Message>
</Document>
</Document>
XML in .NE
XML in .NE
T
T
-

-
Editor
Editor
:
:
Đo
Đo
à
à
n Quang
n Quang
Minh
Minh
5
5
XML Overview
XML Overview
C
C
á
á
c
c


ng
ng
d
d



ng
ng
c
c


th
th


c
c


a
a
XML
XML


XHTML:
XHTML:
đây
đây
l
l
à
à
m

m


r
r


ng
ng
c
c


a
a
HTML.
HTML.
V
V


b
b


n
n
ch
ch



t
t
, XHTML
, XHTML
d
d
ù
ù
ng
ng
c
c
á
á
c
c
th
th


c
c


a
a
HTML,
HTML,
c

c
á
á
c
c
th
th


n
n
à
à
y
y
ph
ph


i
i
vi
vi
ế
ế
t
t
thư
thư



ng
ng
,
,
v
v
à
à
t
t
à
à
i
i
li
li


u
u
XHTML
XHTML
ph
ph


i
i
l

l
à
à
t
t
à
à
i
i
li
li


u
u
h
h


p
p
khuôn
khuôn
d
d


ng
ng
.

.


CML, MML:
CML, MML:
c
c
á
á
c
c
ngôn
ngôn
ng
ng


bi
bi


u
u
di
di


n
n
công

công
th
th


c
c
ho
ho
á
á
h
h


c
c
,
,
công
công
th
th


c
c
to
to
á

á
n
n
h
h


c
c
.
.
C
C
á
á
c
c
công
công
th
th


c
c
n
n
à
à
y

y
c
c
ó
ó
th
th


đư
đư


c
c
v
v


trên
trên
c
c
á
á
c
c
tr
tr
ì

ì
nh
nh
duy
duy


t
t
đ
đ


c
c
bi
bi


t
t
,
,
thông
thông
qua
qua
d
d



li
li


u
u
XML.
XML.


WML:
WML:
ngôn
ngôn
ng
ng


đ
đ


nh
nh
d
d


ng

ng
m
m


ng
ng
không
không
dây
dây
,
,
nh
nh


m
m
t
t


o
o
c
c
á
á
c

c
t
t
à
à
i
i
li
li


u
u
web
web
hi
hi


n
n
th
th


trên
trên
m
m
á

á
y
y
đi
đi


n
n
tho
tho


i
i
di
di
đ
đ


ng
ng
.
.


SOAP (Simple Object Access Protocol):
SOAP (Simple Object Access Protocol):
giao

giao
th
th


c
c
truy
truy
c
c


p
p
đ
đ


i
i




ng
ng
đơn
đơn
gi

gi


n
n
,
,
cho
cho
ph
ph
é
é
p
p
c
c
á
á
c
c


ng
ng
d
d


ng

ng
web
web
c
c
ó
ó
th
th


trao
trao
đ
đ


i
i
thông
thông
tin
tin
v
v


i
i
nhau

nhau
.
.
Khi
Khi
m
m


t
t


ng
ng
d
d


ng
ng
web
web
c
c


n
n
thi

thi
h
h
à
à
nh
nh
m
m


t
t
ch
ch


c
c
năng
năng
do
do
m
m


t
t
web service

web service
cung
cung
c
c


p
p
,
,
n
n
ó
ó
s
s


g
g


i
i
d
d


li

li


u
u
theo
theo
chu
chu


n
n
SOAP
SOAP
t
t


i
i
web service.
web service.
Đ
Đ
ế
ế
n
n





t
t
m
m
ì
ì
nh
nh
,
,
sau
sau
khi
khi
th
th


c
c
thi
thi
yêu
yêu
c
c



u
u
xong
xong
, web service
, web service
s
s


tr
tr


l
l


i
i
k
k
ế
ế
t
t
qu
qu



,
,
c
c
ũ
ũ
ng
ng
theo
theo
chu
chu


n
n
SOAP.
SOAP.
XML in .NE
XML in .NE
T
T
-
-
Editor
Editor
:
:
Đo

Đo
à
à
n Quang
n Quang
Minh
Minh
6
6
Đ
Đ


c
c
XML
XML
C
C
á
á
c
c
đ
đ


i
i





ng
ng
x
x




XML
XML
đư
đư


c
c
cung
cung
c
c


p
p
trong
trong
System.XML

System.XML


Đ
Đ


đ
đ


c
c
file XML,
file XML,
d
d
ù
ù
ng
ng
l
l


p
p
XmlTextReader
XmlTextReader
H

H
à
à
m
m
t
t


o
o
v
v


i
i
tham
tham
s
s


l
l
à
à
tên
tên
file XML

file XML
c
c


n
n
đ
đ


c
c
.
.
Phương
Phương
th
th


c
c
Read()
Read()
đ
đ


c

c
1
1
th
th
à
à
nh
nh
ph
ph


n
n
c
c


a
a
file.
file.
Khi
Khi
đ
đ


c

c
th
th
à
à
nh
nh
công
công
,
,
đ
đ


i
i




ng
ng
s
s


tr
tr



t
t


i
i
node
node
hi
hi


n
n
th
th


i
i
.
.


T
T


i

i
m
m


t
t
node,
node,
ch
ch
ú
ú
ng
ng
ta
ta
c
c
ó
ó
th
th


đ
đ


c

c
đư
đư


c
c
m
m


t
t
s
s


th
th
à
à
nh
nh
ph
ph


n
n
.

.
Ki
Ki


u
u
c
c


a
a
node:
node:
thu
thu


c
c
t
t
í
í
nh
nh
NodeType
NodeType



C
C
ó
ó
nh
nh


ng
ng
ki
ki


u
u
như
như
Element, Text, CDATA, Comment,
Element, Text, CDATA, Comment,


Gi
Gi
á
á
tr
tr



c
c


a
a
node:
node:
thu
thu


c
c
t
t
í
í
nh
nh
Value
Value
C
C
ó
ó
th
th



s
s


d
d


ng
ng
c
c
á
á
c
c
phương
phương
th
th


c
c
c
c


th

th


kh
kh
á
á
c
c
như
như
ReadString
ReadString
():
():
đ
đ


c
c
gi
gi
á
á
tr
tr


text

text
c
c


a
a
node,
node,
ReadAttributeValue
ReadAttributeValue
():
():
đ
đ


c
c
gi
gi
á
á
tr
tr


thu
thu



c
c
t
t
í
í
nh
nh
c
c


a
a
node.
node.
XML in .NE
XML in .NE
T
T
-
-
Editor
Editor
:
:
Đo
Đo
à

à
n Quang
n Quang
Minh
Minh
7
7
Đ
Đ


c
c
XML
XML
public class Sample
public class Sample
{
{
static void
static void
Main(string
Main(string
[]
[]
args
args
)
)
{

{
XmlTextReader
XmlTextReader
textReader
textReader
= new
= new
XmlTextReader("C:
XmlTextReader("C:
\
\
\
\
books.xml
books.xml
");
");
textReader.Read
textReader.Read
();
();
while (
while (
textReader.Read
textReader.Read
() ) // If the node has value
() ) // If the node has value
{
{
// Move to fist element

// Move to fist element
textReader.MoveToElement
textReader.MoveToElement
();
();
Console.WriteLine("XmlTextReader
Console.WriteLine("XmlTextReader
Properties Test");
Properties Test");
Console.WriteLine
Console.WriteLine
("===================");
("===================");
// Read this element's properties and display them on co
// Read this element's properties and display them on co
nsole
nsole
Console.WriteLine("Name
Console.WriteLine("Name
:" +
:" +
textReader.Name
textReader.Name
);
);
Console.WriteLine("Base
Console.WriteLine("Base
URI:" +
URI:" +
textReader.BaseURI

textReader.BaseURI
);
);
Console.WriteLine("Local
Console.WriteLine("Local
Name:" +
Name:" +
textReader.LocalName
textReader.LocalName
);
);
Console.WriteLine("Attribute
Console.WriteLine("Attribute
Count:" +
Count:" +
textReader.AttributeCount.ToString
textReader.AttributeCount.ToString
());
());
Console.WriteLine("Depth
Console.WriteLine("Depth
:" +
:" +
textReader.Depth.ToString
textReader.Depth.ToString
());
());
Console.WriteLine("Line
Console.WriteLine("Line
Number:" +

Number:" +
textReader.LineNumber.ToString
textReader.LineNumber.ToString
());
());
Console.WriteLine("Node
Console.WriteLine("Node
Type:" +
Type:" +
textReader.NodeType.ToString
textReader.NodeType.ToString
());
());
Console.WriteLine("Attribute
Console.WriteLine("Attribute
Count:" +
Count:" +
textReader.Value.ToString
textReader.Value.ToString
());
());
}
}
}
}
}
}
XML in .NE
XML in .NE
T

T
-
-
Editor
Editor
:
:
Đo
Đo
à
à
n Quang
n Quang
Minh
Minh
8
8
Ghi
Ghi
XML
XML
Đ
Đ


ghi
ghi
XML,
XML,
d

d
ù
ù
ng
ng
XmlTextWriter
XmlTextWriter
.
.


H
H
à
à
m
m
t
t


o
o
v
v


i
i
tên

tên
file
file
c
c


n
n
ghi
ghi
.
.


C
C
á
á
c
c
phương
phương
th
th


c
c
quan

quan
tr
tr


ng
ng
.
.
WriteStartDocument
WriteStartDocument
():
():
ghi
ghi
ph
ph


n
n
khai
khai
b
b
á
á
o
o
version XML.

version XML.
WriteStartElement(string
WriteStartElement(string
):
):
ghi
ghi
th
th


m
m


đ
đ


u
u
c
c


a
a
m
m



t
t
n
n
ú
ú
t
t
.
.
WriteAttributeString(string
WriteAttributeString(string
, string):
, string):
ghi
ghi
thu
thu


c
c
t
t
í
í
nh
nh
v

v
à
à
gi
gi
á
á
tr
tr


c
c


a
a
n
n
ó
ó
.
.
WriteElementString(string
WriteElementString(string
, string):
, string):
ghi
ghi
m

m


t
t
n
n
ú
ú
t
t
,
,
trong
trong
đ
đ
ó
ó
c
c
ó
ó
ch
ch


a
a
m

m


t
t
gi
gi
á
á
tr
tr


.
.
WriteEndElement
WriteEndElement
():
():
ghi
ghi
th
th


k
k
ế
ế
t

t
th
th
ú
ú
c
c
c
c


a
a
m
m


t
t
n
n
ú
ú
t
t
.
.
XML in .NE
XML in .NE
T

T
-
-
Editor
Editor
:
:
Đo
Đo
à
à
n Quang
n Quang
Minh
Minh
9
9
Ghi
Ghi
XML
XML
public class Sample
public class Sample
{
{
public static void Main()
public static void Main()
{
{
XmlTextWriter

XmlTextWriter
writer = new
writer = new
XmlTextWriter("titles.xml
XmlTextWriter("titles.xml
", null);
", null);
//Write the root element
//Write the root element
writer.WriteStartElement("items
writer.WriteStartElement("items
");
");
//Write sub
//Write sub
-
-
elements
elements
writer.WriteElementString("title
writer.WriteElementString("title
", "Unreal Tournament 2003");
", "Unreal Tournament 2003");
writer.WriteElementString("title
writer.WriteElementString("title
", "C&C: Renegade");
", "C&C: Renegade");
writer.WriteElementString("title
writer.WriteElementString("title
", "Dr. Seuss's ABC");

", "Dr. Seuss's ABC");
// end the root element
// end the root element
writer.WriteEndElement
writer.WriteEndElement
();
();
//Write the XML to file and close the writer
//Write the XML to file and close the writer
writer.Close
writer.Close
();
();
}
}
}
}
XML in .NE
XML in .NE
T
T
-
-
Editor
Editor
:
:
Đo
Đo
à

à
n Quang
n Quang
Minh
Minh
10
10
DOM
DOM
trong
trong
.NET
.NET
DOM (Document Object Model):
DOM (Document Object Model):


h
h
ì
ì
nh
nh
đ
đ


i
i





ng
ng
t
t
à
à
i
i
li
li


u
u
cho
cho
ph
ph
é
é
p
p
x
x





XML
XML
m
m


t
t
c
c
á
á
ch
ch
m
m


m
m
d
d


o
o


Kh

Kh
á
á
c
c
v
v


i
i
XmlTextReader
XmlTextReader
,
,
XmlTextWriter
XmlTextWriter
ch
ch


cho
cho
ph
ph
é
é
p
p
đ

đ


c
c
v
v
à
à
ghi
ghi
XML
XML
theo
theo
ki
ki


u
u
tu
tu


n
n
t
t



, DOM
, DOM
cho
cho
ph
ph
é
é
p
p
truy
truy
c
c


p
p
ng
ng


u
u
nhiên
nhiên
v
v
à

à
o
o
t
t
à
à
i
i
li
li


u
u
XML.
XML.


C
C
á
á
c
c
l
l


p

p
quan
quan
tr
tr


ng
ng
XmlDocument
XmlDocument
:
:
cho
cho
ph
ph
é
é
p
p
x
x




XML
XML
theo

theo
DOM
DOM
XmlNodeList
XmlNodeList
:
:
danh
danh
s
s
á
á
ch
ch
c
c
á
á
c
c
node
node
trong
trong
t
t
à
à
i

i
li
li


u
u
XML.
XML.
XmlNode
XmlNode
:
:
m
m


t
t
node
node
đơn
đơn
nh
nh


t
t
trong

trong
t
t
à
à
i
i
li
li


u
u


XmlDocument
XmlDocument
cho
cho
ph
ph
é
é
p
p
thêm
thêm
node
node
m

m


i
i
,
,
n
n


i
i
node
node
v
v
à
à
o
o
đuôi
đuôi
t
t
à
à
i
i
li

li


u
u
,
,
xo
xo
á
á
node
node
kh
kh


i
i
t
t
à
à
i
i
li
li


u

u
.
.
XML in .NE
XML in .NE
T
T
-
-
Editor
Editor
:
:
Đo
Đo
à
à
n Quang
n Quang
Minh
Minh
11
11
DOM
DOM
trong
trong
.NET
.NET
void Sample()

void Sample()
{
{
oXmlDoc
oXmlDoc
= new
= new
XmlDocument
XmlDocument
();
();
oXmlDoc.Load(Server.MapPath("xml_XmlDocument.xml
oXmlDoc.Load(Server.MapPath("xml_XmlDocument.xml
"));
"));
XmlNode
XmlNode
oNode
oNode
=
=
oXmlDoc.DocumentElement
oXmlDoc.DocumentElement
;
;
Console.WriteLine("Node
Console.WriteLine("Node
Name: " +
Name: " +
oNode.Name

oNode.Name
);
);
XmlNodeList
XmlNodeList
oNodeList
oNodeList
=
=
oNode.SelectNodes
oNode.SelectNodes
("/books/category/title");
("/books/category/title");
Console.WriteLine("NodeList
Console.WriteLine("NodeList
count=" +
count=" +
oNodeList.Count
oNodeList.Count
);
);
for(int
for(int
x = 0; x <
x = 0; x <
oNodeList.Count
oNodeList.Count
; x++)
; x++)
Console.WriteLine("NodeList

Console.WriteLine("NodeList
Item#" + x + " " +
Item#" + x + " " +
oNodeList.Item[x].InnerText
oNodeList.Item[x].InnerText
);
);
}
}
XML in .NE
XML in .NE
T
T
-
-
Editor
Editor
:
:
Đo
Đo
à
à
n Quang
n Quang
Minh
Minh
12
12



ng
ng
d
d


ng
ng
T
T
à
à
i
i
li
li


u
u
XML
XML
c
c
ó
ó
th
th



d
d
ù
ù
ng
ng
lưu
lưu
tr
tr


d
d


li
li


u
u
như
như
l
l
à
à
m

m


t
t
CSDL.
CSDL.
M
M


t
t


ng
ng
d
d


ng
ng
:
:


Xây
Xây
d

d


ng
ng
chương
chương
tr
tr
ì
ì
nh
nh
thi
thi
tr
tr


c
c
nghi
nghi


m
m
qua
qua
m

m


ng
ng
,
,
trên
trên
n
n


n
n
web:
web:
Hi
Hi


n
n
th
th


câu
câu
h

h


i
i
,
,
danh
danh
s
s
á
á
ch
ch
c
c
á
á
c
c
đ
đ
á
á
p
p
á
á
n

n
S
S






ng
ng
đ
đ
á
á
p
p
á
á
n
n
trong
trong
m
m


t
t
câu

câu
h
h


i
i
c
c
ó
ó
th
th


kh
kh
á
á
c
c
nhau
nhau
,
,
v
v
à
à
không

không
h
h


n
n
ch
ch
ế
ế
.
.
M
M


t
t
câu
câu
h
h


i
i
ch
ch



c
c
ó
ó
m
m


t
t
đ
đ
á
á
p
p
á
á
n
n
đ
đ
ú
ú
ng
ng
.
.
XML in .NE

XML in .NE
T
T
-
-
Editor
Editor
:
:
Đo
Đo
à
à
n Quang
n Quang
Minh
Minh
13
13


ng
ng
d
d


ng
ng
Phân

Phân
t
t
í
í
ch
ch


C
C
á
á
c
c
yêu
yêu
c
c


u
u
đ
đ


u
u
b

b
à
à
i
i
.
.


Thi
Thi
ế
ế
t
t
k
k
ế
ế
CSDL
CSDL




i
i
d
d



ng
ng
file XML
file XML
Đ
Đ


ra
ra
m
m


t
t


h
h
ì
ì
nh
nh
lưu
lưu
tr
tr



ph
ph
ù
ù
h
h


p
p
T
T


o
o
th
th


file
file
d
d


li
li



u
u


Design form
Design form


Vi
Vi
ế
ế
t
t


d
d


a
a
trên
trên
phân
phân
t
t
í

í
ch
ch
yêu
yêu
c
c


u
u
XML in .NE
XML in .NE
T
T
-
-
Editor
Editor
:
:
Đo
Đo
à
à
n Quang
n Quang
Minh
Minh
14

14
T
T
à
à
i li
i li


u tham kh
u tham kh


o
o
Professional C#, Second Edition
Professional C#, Second Edition
http
http
://www.asp.net
://www.asp.net
/> />

Đ
Đ


a ch
a ch



download t
download t
à
à
i li
i li


u
u
/> />-
-
day/tab.aspx
day/tab.aspx
Di
Di


n đ
n đ
à
à
n C# & .NET
n C# & .NET
http://www.
http://www.
thanglong.edu.vn
thanglong.edu.vn
/forum/cmd/0/categ

/forum/cmd/0/categ
ory/hoc
ory/hoc
-
-
tap
tap
-
-
nghien
nghien
-
-
cuu/dot
cuu/dot
-
-
net/tab.aspx
net/tab.aspx
File and Registry
File and Registry
-
-
Editor
Editor
:
:
Đo
Đo
à

à
n Quang
n Quang
Minh
Minh
1
1
C# and .NET Framework
C# and .NET Framework
B
B
à
à
i 8:
i 8:
File and Registry
File and Registry
Đo
Đo
à
à
n Quang Minh
n Quang Minh


http
http
://www.VTPortal.net
://www.VTPortal.net
Last update:

Last update:
30. December 2006
30. December 2006
File and Registry
File and Registry
-
-
Editor
Editor
:
:
Đo
Đo
à
à
n Quang
n Quang
Minh
Minh
2
2
M
M


c l
c l


c

c
Managing the File System
Managing the File System
Moving, Copying, and Deleting Files
Moving, Copying, and Deleting Files
Reading and Writing to Files
Reading and Writing to Files
The Registry
The Registry


ng
ng
d
d


ng
ng
File and Registry
File and Registry
-
-
Editor
Editor
:
:
Đo
Đo
à

à
n Quang
n Quang
Minh
Minh
3
3
Managing the File System
Managing the File System
.NET h
.NET h


tr
tr


c
c
á
á
c thao t
c thao t
á
á
c l
c l
à
à
m vi

m vi


c v
c v


i file
i file


C
C
á
á
c t
c t
á
á
c v
c v


thông thư
thông thư


ng như li
ng như li



t kê file, sao ch
t kê file, sao ch
é
é
p, di chuy
p, di chuy


n,
n,
xo
xo
á
á
.
.


C
C
á
á
c l
c l


p thao t
p thao t
á

á
c v
c v


i file n
i file n


m trong namespace System.IO
m trong namespace System.IO


C
C
á
á
c l
c l


p quan tr
p quan tr


ng: File, FileInfo, Directory, Path,
ng: File, FileInfo, Directory, Path,
L
L
à

à
m vi
m vi


c v
c v


i file v
i file v
à
à
folder
folder


C
C
ó
ó
2
2
lo
lo


i
i
đ

đ


i
i




ng
ng
l
l
à
à
m
m
vi
vi


c
c
v
v


i
i
file

file
v
v
à
à
folder
folder
Directory
Directory
v
v
à
à
File:
File:
ch
ch


ch
ch


a
a
c
c
á
á
c

c
phương
phương
th
th


c
c
t
t
ĩ
ĩ
nh
nh
,
,
không
không
th
th


kh
kh


i
i
t

t


o
o
.
.
Thư
Thư


ng
ng
d
d
ù
ù
ng
ng
khi
khi
ch
ch


th
th


c

c
hi
hi


n
n
1
1
thao
thao
t
t
á
á
c
c
v
v


i
i
1 file
1 file
ho
ho


c

c
folder.
folder.
Khi
Khi
thao
thao
t
t
á
á
c
c
,
,
ch
ch


c
c


n
n
cung
cung
c
c



p
p
đư
đư


ng
ng
d
d


n
n
đ
đ
ế
ế
n
n
file hay folder
file hay folder
c
c


n
n
l

l
à
à
m
m
vi
vi


c
c
DirectoryInfo
DirectoryInfo
v
v
à
à
FileInfo
FileInfo
:
:
cung
cung
c
c


p
p
c

c
á
á
c
c
phương
phương
th
th


c
c
như
như
2
2
đ
đ


i
i




ng
ng
trên

trên
,
,
nhưng
nhưng
yêu
yêu
c
c


u
u
ph
ph


i
i
t
t


o
o
instance.
instance.
Thư
Thư



ng
ng
d
d
ù
ù
ng
ng
khi
khi
th
th


c
c
hi
hi


n
n
nhi
nhi


u
u
thao

thao
t
t
á
á
c
c
v
v


i
i
1 file
1 file
ho
ho


c
c
folder.
folder.
File and Registry
File and Registry
-
-
Editor
Editor
:

:
Đo
Đo
à
à
n Quang
n Quang
Minh
Minh
4
4
Managing the File System
Managing the File System
Tên
Ý
Ý
ngh
ngh
ĩ
ĩ
a
a
CreationTime Thờigiantạo file hoặc folder
DirectoryName (FileInfo),
Parent (DirectoryInfo)
Đường dẫn đầy đủ củafolder chứa file
hoặc folder hiệnthời
Exists File hay folder có tồntại hay không?
Extension Phầnmở rộng
FullName Tên đầy đủ, cảđường dẫn

LastAccessTime Thờigianlầntruycậpcuối
LastWriteTime Thờigianlầnsửa đổicuối
Name Tên file hay folder
Root Folder gốc(chỉ với DirectoryInfo)
Length Dung lượng (bytes), chỉ với FileInfo
File and Registry
File and Registry
-
-
Editor
Editor
:
:
Đo
Đo
à
à
n Quang
n Quang
Minh
Minh
5
5
Managing the File System
Managing the File System
//
//
kh
kh



i
i
t
t


o
o
bi
bi
ế
ế
n
n
myFile
myFile
tr
tr


đ
đ
ế
ế
n
n
m
m



t
t
t
t


p
p
tin
tin
FileInfo
FileInfo
myFile
myFile
= new
= new
FileInfo(@"C
FileInfo(@"C
:
:
\
\
How to C
How to C
Sharp.txt
Sharp.txt
");
");
//

//
sao
sao
ch
ch
é
é
p
p
sang
sang


đ
đ
ĩ
ĩ
a
a
D
D
myFile.CopyTo(@"D
myFile.CopyTo(@"D
:
:
\
\
");
");
//

//
ki
ki


m
m
tra
tra
s
s


t
t


n
n
t
t


i
i
Console.WriteLine(myFile.Exists.ToString
Console.WriteLine(myFile.Exists.ToString
());
());
//

//
ghi
ghi
thông
thông
tin
tin
th
th


i
i
đi
đi


m
m
t
t


o
o
file
file
Console.WriteLine(myFile.CreationTime.ToString
Console.WriteLine(myFile.CreationTime.ToString
());

());
//
//
c
c


p
p
nh
nh


t
t
th
th


i
i
đi
đi


m
m
t
t



o
o
file
file
myFile.CreationTime
myFile.CreationTime
= new DateTime(2001, 1, 1, 7, 30, 0);
= new DateTime(2001, 1, 1, 7, 30, 0);
File and Registry
File and Registry
-
-
Editor
Editor
:
:
Đo
Đo
à
à
n Quang
n Quang
Minh
Minh
6
6
Managing the File System
Managing the File System
DirectoryInfo

DirectoryInfo
theFolder
theFolder
= new
= new
DirectoryInfo(folderFullName
DirectoryInfo(folderFullName
);
);
if (!
if (!
theFolder.Exists
theFolder.Exists
)
)
throw new
throw new
DirectoryNotFoundException("Folder
DirectoryNotFoundException("Folder
not found: " +
not found: " +
folderFullName
folderFullName
);
);
string
string
currentPath
currentPath
=

=
theFolder.FullName
theFolder.FullName
;
;
//
//
L
L


y
y
tên
tên
c
c
á
á
c
c
thư
thư
m
m


c
c
con

con
c
c


a
a
thư
thư
m
m


c
c
hi
hi


n
n
th
th


i
i
ArrayList
ArrayList
folders = new

folders = new
ArrayList
ArrayList
();
();
foreach(DirectoryInfo
foreach(DirectoryInfo
folder in
folder in
theFolder.GetDirectories
theFolder.GetDirectories
())
())
folders.Add(folder.Name
folders.Add(folder.Name
);
);
//
//
L
L


y
y
tên
tên
c
c
á

á
c
c
file
file
trong
trong
thư
thư
m
m


c
c
hi
hi


n
n
th
th


i
i
ArrayList
ArrayList
files = new

files = new
ArrayList
ArrayList
();
();
foreach(FileInfo
foreach(FileInfo
file in
file in
theFolder.GetFiles
theFolder.GetFiles
())
())
files.Add(file.Name
files.Add(file.Name
);
);
File and Registry
File and Registry
-
-
Editor
Editor
:
:
Đo
Đo
à
à
n Quang

n Quang
Minh
Minh
7
7
Moving, Copying, and Deleting Files
Moving, Copying, and Deleting Files
C
C
ó
ó
th
th


sao
sao
ch
ch
é
é
p
p
,
,
di
di
chuy
chuy



n
n
ho
ho


c
c
xo
xo
á
á
t
t


p
p
tin.
tin.


Phương
Phương
th
th


c

c
Path.Combine(string
Path.Combine(string
, string):
, string):
tr
tr


v
v


tên
tên
đ
đ


y
y
đ
đ


c
c


a

a
file
file
t
t


o
o
t
t


đư
đư


ng
ng
d
d


n
n
v
v
à
à
tên

tên
file.
file.


Phương
Phương
th
th


c
c
File.Delete(string
File.Delete(string
):
):
xo
xo
á
á
t
t


p
p
tin.
tin.



Phương
Phương
th
th


c
c
File.Move(string
File.Move(string
, string):
, string):
di
di
chuy
chuy


n
n
file
file
t
t


v
v



tr
tr
í
í
c
c
ũ
ũ
đ
đ
ế
ế
n
n
v
v


tr
tr
í
í
m
m


i
i
.

.


Phương
Phương
th
th


c
c
File.Copy(string
File.Copy(string
, string):
, string):
sao
sao
ch
ch
é
é
p
p
file sang
file sang
m
m


t

t
thư
thư
m
m


c
c
m
m


i
i
.
.
File and Registry
File and Registry
-
-
Editor
Editor
:
:
Đo
Đo
à
à
n Quang

n Quang
Minh
Minh
8
8
Reading and Writing to Files
Reading and Writing to Files
Đ
Đ


c
c
v
v
à
à
ghi
ghi
file
file
d
d


a
a
trên
trên
kh

kh
á
á
i
i
ni
ni


m
m
stream (
stream (
lu
lu


ng
ng
d
d


li
li


u
u
)

)


stream
stream
l
l
à
à
đ
đ


i
i




ng
ng
d
d
ù
ù
ng
ng
đ
đ



chuy
chuy


n
n
d
d


li
li


u
u
. Do
. Do
đ
đ
ó
ó
stream
stream
c
c
ó
ó
th

th


l
l
à
à
lu
lu


ng
ng
d
d


a
a
trên
trên
b
b


nh
nh


,

,
trên
trên
t
t


p
p
tin,
tin,
trên
trên
m
m


ng
ng
,
,




FileStream
FileStream
:
:
đ

đ


i
i




ng
ng
d
d
ù
ù
ng
ng
đ
đ


đ
đ


c
c
ghi
ghi
file

file
nh
nh


phân
phân
.
.


StreamReader
StreamReader
v
v
à
à
StreamWriter
StreamWriter
:
:
đ
đ


i
i





ng
ng
d
d
ù
ù
ng
ng
đ
đ


đ
đ


c
c
ghi
ghi
file text.
file text.


Ch
Ch
ú
ú
ý:

ý:
c
c
á
á
c
c
t
t
á
á
c
c
v
v


đ
đ


c
c
ghi
ghi
h
h


u

u
h
h
ế
ế
t
t
đ
đ


u
u
s
s


d
d


ng
ng
buffer.
buffer.
Do
Do
đ
đ
ó

ó
,
,
v
v


i
i
t
t
á
á
c
c
v
v


ghi
ghi
,
,
ph
ph


i
i
đ

đ


y
y
d
d


li
li


u
u
t
t


buffer
buffer
lên
lên
đ
đ
ĩ
ĩ
a
a
trư

trư


c
c
khi
khi
đ
đ
ó
ó
ng
ng
file.
file.
File and Registry
File and Registry
-
-
Editor
Editor
:
:
Đo
Đo
à
à
n Quang
n Quang
Minh

Minh
9
9
Reading and Writing to Files
Reading and Writing to Files
Đ
Đ


c
c
ghi
ghi
file
file
nh
nh


phân
phân
:
:
d
d
ù
ù
ng
ng
FileStream

FileStream
.
.


H
H
à
à
m
m
t
t


o
o
:
:
c
c


n
n
ch
ch


ra

ra
filename,
filename,
FileMode
FileMode
,
,
FileAccess
FileAccess
,
,
FileShare
FileShare
.
.
FileMode
FileMode
:
:
ki
ki


u
u
m
m


file,

file,
c
c
ó
ó
th
th


l
l
à
à
Append, Create,
Append, Create,
CreateNew
CreateNew
,
,
Open,
Open,
OpenOrCreate
OpenOrCreate
,
,
ho
ho


c

c
Truncate.
Truncate.
FileAccess
FileAccess
:
:
ki
ki


u
u
truy
truy
c
c


p
p
,
,
c
c
ó
ó
th
th



l
l
à
à
Read,
Read,
ReadWrite
ReadWrite
,
,
ho
ho


c
c
Write.
Write.
FileShare
FileShare
:
:
ki
ki


u
u
chia

chia
s
s


gi
gi


a
a
c
c
á
á
c
c
thread,
thread,
c
c
ó
ó
th
th


l
l
à

à
Inheritable, None,
Inheritable, None,
Read,
Read,
ReadWrite
ReadWrite
, or Write
, or Write


Đ
Đ


đ
đ


c
c
v
v
à
à
ghi
ghi
byte,
byte,
d

d
ù
ù
ng
ng
c
c
á
á
c
c
h
h
à
à
m
m
:
:
ReadByte
ReadByte
():
():
đ
đ


c
c
m

m


t
t
byte
byte
t
t


stream
stream
WriteByte(byte
WriteByte(byte
):
):
ghi
ghi
m
m


t
t
byte
byte
v
v
à

à
o
o
stream
stream
Read/
Read/
Write(byte
Write(byte
[],
[],
int
int
off,
off,
int
int
count):
count):
đ
đ


c/ghi
c/ghi
m
m


t

t
m
m


ng
ng
byte
byte
b
b


t
t
đ
đ


u
u
t
t


off,
off,
đ
đ



d
d
à
à
i
i
count
count


Sau
Sau
khi
khi
đ
đ


c/ghi
c/ghi
,
,
d
d
ù
ù
ng
ng
Close()

Close()
đ
đ


đ
đ
ó
ó
ng
ng
file
file
File and Registry
File and Registry
-
-
Editor
Editor
:
:
Đo
Đo
à
à
n Quang
n Quang
Minh
Minh
10

10
Reading and Writing to Files
Reading and Writing to Files
Đ
Đ


c
c
v
v
à
à
ghi
ghi
file text:
file text:
d
d
ù
ù
ng
ng
StreamReader
StreamReader
v
v
à
à
StreamWriter

StreamWriter


C
C
ó
ó
th
th


kh
kh


i
i
t
t


o
o
StreamReader
StreamReader
d
d


a

a
trên
trên
Tên
Tên
file
file
c
c


n
n
đ
đ


c
c
M
M


t
t
FileStream
FileStream
kh
kh
á

á
c
c
Ho
Ho


c
c
m
m


t
t
FileInfo
FileInfo
v
v


i
i
phương
phương
th
th


c

c
OpenText
OpenText
()
()


C
C
ó
ó
th
th


kh
kh


i
i
t
t


o
o
StreamWriter
StreamWriter
d

d


a
a
trên
trên
Tên
Tên
file
file
c
c


n
n
đ
đ


c
c
,
,


encode
encode
M

M


t
t
FileStream
FileStream
kh
kh
á
á
c
c
Ho
Ho


c
c
m
m


t
t
FileInfo
FileInfo
v
v



i
i
phương
phương
th
th


c
c
CreatText
CreatText
()
()


Đ
Đ


đ
đ


c
c
v
v
à

à
ghi
ghi
,
,
d
d
ù
ù
ng
ng
c
c
á
á
c
c
h
h
à
à
m
m
Read()/Write():
Read()/Write():
đ
đ


c

c
v
v
à
à
ghi
ghi
m
m


t
t


t
t


ReadLine()/WriteLine
ReadLine()/WriteLine
():
():
đ
đ


c
c
v

v
à
à
ghi
ghi
m
m


t
t
dòng
dòng
ReadToEnd
ReadToEnd
():
():
đ
đ


c
c
đ
đ
ế
ế
n
n
h

h
ế
ế
t
t
file
file
File and Registry
File and Registry
-
-
Editor
Editor
:
:
Đo
Đo
à
à
n Quang
n Quang
Minh
Minh
11
11
Reading and Writing to Files
Reading and Writing to Files
void WriteToTextFile(string FileName, string strMessage)
{
FileStream myFileStream = new FileStream(FileName, FileMode.Append, FileAccess.Write, System.IO.FileShare.None);

System.IO.StreamWriter myWriter = new StreamWriter(myFileStream);
myWriter.WriteLine(System.DateTime.Now.ToString() + " - " + strMessage);
myWriter.Close();
myFileStream.Close();
}
string ReadFileTextContent(string Filename)
{
StreamReader myStreamReader = null;
string FilePath = System.Web.HttpContext.Current.Server.MapPath(Filename);
string result = string.Empty;
try
{
myStreamReader = File.OpenText(FilePath);
result = myStreamReader.ReadToEnd();
}
catch(Exception exc)
{
throw;
}
finally
{
if (myStreamReader != null) myStreamReader.Close();
}
return result;
}

×