.NET Logo
Welcome Guest Search | Active Topics | Members | Log In | Register

การเขียนโปรแกรม C++/CLI ครั้งที่ 7 Options · View
paedotnet
Posted: Tuesday, January 08, 2008 11:45:27 PM

Rank: มือเทพ
Groups: Member

Joined: 12/6/2007
Posts: 344
Location: bkk

การสร้าง Directory

#include "stdafx.h"
using namespace System;
using namespace System::IO;
void main(){
 DirectoryInfo^ dir =gcnew DirectoryInfo("D:\\testfile\\testdir"); //กำหนด Directory ที่ต้องการสร้าง
 if(dir->Exists){ //ตรวจสอบว่า มี Directory ที่ชื่อ testdir หรือยัง
  Console::WriteLine("testdir has created");
 }else{
 dir->Create(); //ถ้ายังไม่มีก็เรียกใช้คำสั่ง Create()
 }
}

ตัวอย่างการหารายละเอียดเกี่ยวกับ Directory

#include "stdafx.h"
using namespace System;
using namespace System::IO;
void main(){
 DirectoryInfo^ dir =gcnew DirectoryInfo("D:\\testfile\\testdir");
 Console::WriteLine(dir->CreationTime);
 Console::WriteLine(dir->FullName);
 Console::WriteLine(dir->LastWriteTime);
 Console::ReadLine();
}

การสร้าง SubDirectory
จะใช้เมธอด CreateSubdirectory(string path) ในการสร้าง Directory ย่อยๆ
ตัวอย่าง

#include "stdafx.h"
using namespace System;
using namespace System::IO;
void main(){
 DirectoryInfo^ dir =gcnew DirectoryInfo("D:\\testfile\\testdir");
 dir->CreateSubdirectory("sub1"); //สร้างDirectory ย่อย ใน Directory testdir
}

การจัดการเกี่ยวกับ File
การสร้าง File 
ตัวอย่าง

#include "stdafx.h"
using namespace System;
using namespace System::IO;
void main(){
 FileInfo^   info = gcnew FileInfo("D:\\testfile\\testdir\\test.txt");//กำหนด file ชื่อ test.txt
 FileStream^ fs = info->Create();
 Console::WriteLine(info->CreationTime); //แสดงเวลาที่สร้างไฟล์
 Console::WriteLine(info->FullName);//แสดงชื่อไฟล์
 fs->Close();
}

การเขียนไฟล์


#include "stdafx.h"
using namespace System;
using namespace System::IO;
void main(){
  FileStream^ fs =gcnew FileStream("D:\\testfile\\testdir\\test1.txt",FileMode::Create,FileAccess::Write,FileShare::None);
  array<unsigned char>^ a ={'A','B','C'};
  fs->Write(a,0,3);
  fs->Close();
}

การใช้ StreamWriter ในการเขียนไฟล์

#include "stdafx.h"
using namespace System;
using namespace System::IO;
void main(){
    FileInfo^   info = gcnew FileInfo("D:\\testfile\\testdir\\test.txt");//กำหนด file ชื่อ test.txt
 StreamWriter^ writer = info->CreateText();
 for(int i=0;i<10;i++){
  writer->WriteLine(i); //เขียนตัวเลขตั่งแต่ 0 ถึง 9
 }
 writer->Flush();
}

การใช้งาน StreamReader เพื่ออ่านไฟล์

#include "stdafx.h"
using namespace System;
using namespace System::IO;
void main(){
 FileInfo^   info = gcnew FileInfo("D:\\testfile\\testdir\\test.txt");
 StreamReader^ reader = info->OpenText();
 Console::WriteLine(reader->ReadToEnd());
  Console::ReadLine();
}

การใช้งาน MemoryStream
ตัวอย่าง

#include "stdafx.h"
using namespace System;
using namespace System::IO;
void main(){
MemoryStream^ m = gcnew MemoryStream(6);
array<unsigned char>^ a = {'A','B','C','D','E'};
m->Write(a,0,5);
FileStream^ fs = File::Create("D:\\testfile\\testdir\\mem1.txt"); กำหนดไฟล์ที่ต้องการเขียน
m->WriteTo(fs);// นำข้อมูล ของ MemoryStream เก็บในไฟล์ mem1.txt
m->Close();
fs->Close();
}

การใช้งาน BinaryReader และ BinaryWriter

#include "stdafx.h"
using namespace System;
using namespace System::IO;
void main(){
    //------ การเขียนไฟล์------//
 FileInfo^ info = gcnew FileInfo("D:\\testfile\\testdir\\testbinary.dat");
 FileStream^ fs =info->Create();
 BinaryWriter^ bw = gcnew BinaryWriter(fs);
 for(char chr ='A';chr <= 'Z'; chr++){
 bw->Write(chr);
 }
 bw->Close();
 fs->Close();
 //------ การอ่านไฟล์------//
     FileInfo^ i = gcnew FileInfo("D:\\testfile\\testdir\\testbinary.dat");
  FileStream^ fsread =i->OpenRead();
  BinaryReader^ reader = gcnew BinaryReader(fsread);
  String^ str = reader->ReadString();
  Console::WriteLine(str);
  reader->Close();
  fsread->Close();
  Console::ReadLine();
}


[With great power comes great responsibility]
Users browsing this topic
Guest


Forum Jump
You cannot post new topics in this forum.
You cannot reply to topics in this forum.
You cannot delete your posts in this forum.
You cannot edit your posts in this forum.
You cannot create polls in this forum.
You cannot vote in polls in this forum.

Main Forum RSS : RSS

YAFVision Theme Created by Jaben Cargman (Tiny Gecko)
Powered by Yet Another Forum.net version 1.9.1.8 (NET v2.0) - 3/29/2008
Copyright © 2003-2008 Yet Another Forum.net. All rights reserved.


Sponsored by