<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://trans.onionmixer.net/wiki/index.php?action=history&amp;feed=atom&amp;title=StartprogrammingusingObjectPascal%3ACopyFilesUsingTFileStream</id>
	<title>StartprogrammingusingObjectPascal:CopyFilesUsingTFileStream - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://trans.onionmixer.net/wiki/index.php?action=history&amp;feed=atom&amp;title=StartprogrammingusingObjectPascal%3ACopyFilesUsingTFileStream"/>
	<link rel="alternate" type="text/html" href="https://trans.onionmixer.net/wiki/index.php?title=StartprogrammingusingObjectPascal:CopyFilesUsingTFileStream&amp;action=history"/>
	<updated>2026-05-01T07:42:46Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.43.3</generator>
	<entry>
		<id>https://trans.onionmixer.net/wiki/index.php?title=StartprogrammingusingObjectPascal:CopyFilesUsingTFileStream&amp;diff=400&amp;oldid=prev</id>
		<title>Onionmixer: 번역수정</title>
		<link rel="alternate" type="text/html" href="https://trans.onionmixer.net/wiki/index.php?title=StartprogrammingusingObjectPascal:CopyFilesUsingTFileStream&amp;diff=400&amp;oldid=prev"/>
		<updated>2013-04-04T11:31:09Z</updated>

		<summary type="html">&lt;p&gt;번역수정&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;==TFileStream을 사용한 파일 복사==&lt;br /&gt;
&lt;br /&gt;
이 예제에서는 &amp;#039;&amp;#039;TFileStream&amp;#039;&amp;#039; 형식을 사용하여 파일을 복사하려고 합니다.&lt;br /&gt;
&lt;br /&gt;
이를 실행하려면 새 프로그램을 만들고 메인 폼에 이 구성요소를 놓습니다.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;text&amp;quot;&amp;gt;&lt;br /&gt;
TButton, TOpenDialog, TSaveDialog&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Button 의  OnClick 이벤트에 대해 다음 코드를 작성합니다.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;pascal&amp;quot;&amp;gt;&lt;br /&gt;
procedure TfmMain.Button1Click(Sender: TObject);&lt;br /&gt;
var&lt;br /&gt;
    SourceF, DestF: TFileStream;&lt;br /&gt;
    Buf: array [0 .. 1023] of Byte;&lt;br /&gt;
    NumRead: Integer;&lt;br /&gt;
begin&lt;br /&gt;
    if OpenDialog1.Execute and SaveDialog1.Execute then&lt;br /&gt;
    begin&lt;br /&gt;
        SourceF:= TFileStream.Create(OpenDialog1.FileName, fmOpenRead);&lt;br /&gt;
        DestF:= TFileStream.Create(SaveDialog1.FileName, fmCreate);&lt;br /&gt;
        while SourceF.Position &amp;lt; SourceF.Size do&lt;br /&gt;
        begin&lt;br /&gt;
            NumRead:= SourceF.Read(Buf, SizeOf(Buf));&lt;br /&gt;
            DestF.Write(Buf, NumRead);&lt;br /&gt;
        end;&lt;br /&gt;
        SourceF.Free;&lt;br /&gt;
        DestF.Free;&lt;br /&gt;
        ShowMessage(&amp;#039;Copy finished&amp;#039;);&lt;br /&gt;
    end;&lt;br /&gt;
end;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
이 방법은 객체지향 파일을 사용한다는 점을 제외하면 비형식적 파일을 사용하는 것과 매우 유사합니다.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
또한 파일을 복사하는 더욱 간단한 방법도 사용할 수 있습니다.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;pascal&amp;quot;&amp;gt;&lt;br /&gt;
procedure TfmMain.Button1Click(Sender: TObject);&lt;br /&gt;
var&lt;br /&gt;
    SourceF, DestF: TFileStream;&lt;br /&gt;
begin&lt;br /&gt;
    if OpenDialog1.Execute and SaveDialog1.Execute then&lt;br /&gt;
    begin&lt;br /&gt;
        SourceF:= TFileStream.Create(OpenDialog1.FileName, fmOpenRead);&lt;br /&gt;
        DestF:= TFileStream.Create(SaveDialog1.FileName, fmCreate);&lt;br /&gt;
        DestF.CopyFrom(SourceF, SourceF.Size);&lt;br /&gt;
        SourceF.Free;&lt;br /&gt;
        DestF.Free;&lt;br /&gt;
        ShowMessage(&amp;#039;Copy finished&amp;#039;);&lt;br /&gt;
    end;&lt;br /&gt;
end;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
우리가 원본 파일의 크기(SourceF.size)를 &amp;#039;&amp;#039;&amp;#039;&amp;#039;&amp;#039;CopyFrom&amp;#039;&amp;#039;&amp;#039;&amp;#039;&amp;#039; 메서드에 넘겨주었기 때문에 이것은 전체 파일 내용을 대상 파일로 복사합니다.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:StartprogrammingusingObjectPascal]]&lt;/div&gt;</summary>
		<author><name>Onionmixer</name></author>
	</entry>
	<entry>
		<id>https://trans.onionmixer.net/wiki/index.php?title=StartprogrammingusingObjectPascal:CopyFilesUsingTFileStream&amp;diff=398&amp;oldid=prev</id>
		<title>Onionmixer: SPOP TFileStream을사용한파일복사 페이지 추가</title>
		<link rel="alternate" type="text/html" href="https://trans.onionmixer.net/wiki/index.php?title=StartprogrammingusingObjectPascal:CopyFilesUsingTFileStream&amp;diff=398&amp;oldid=prev"/>
		<updated>2012-07-26T11:54:07Z</updated>

		<summary type="html">&lt;p&gt;SPOP TFileStream을사용한파일복사 페이지 추가&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;===TFileStream을 사용한 파일 복사===&lt;br /&gt;
&lt;br /&gt;
이 예제에서는 &amp;#039;&amp;#039;TFileStream&amp;#039;&amp;#039; 형식을 사용하여 파일을 복사하려고 합니다.&lt;br /&gt;
&lt;br /&gt;
이를 수행하려면 새 프로그램을 만들고 메인 폼에 이 구성요소를 놓습니다.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;text&amp;quot;&amp;gt;&lt;br /&gt;
TButton, TOpenDialog, TSaveDialog&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
단추의 OnClick 이벤트에 대해 다음 코드를 작성합니다.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;pascal&amp;quot;&amp;gt;&lt;br /&gt;
procedure TfmMain.Button1Click(Sender: TObject);&lt;br /&gt;
var&lt;br /&gt;
    SourceF, DestF: TFileStream;&lt;br /&gt;
    Buf: array [0 .. 1023] of Byte;&lt;br /&gt;
    NumRead: Integer;&lt;br /&gt;
begin&lt;br /&gt;
    if OpenDialog1.Execute and SaveDialog1.Execute then&lt;br /&gt;
    begin&lt;br /&gt;
        SourceF:= TFileStream.Create(OpenDialog1.FileName, fmOpenRead);&lt;br /&gt;
        DestF:= TFileStream.Create(SaveDialog1.FileName, fmCreate);&lt;br /&gt;
        while SourceF.Position &amp;lt; SourceF.Size do&lt;br /&gt;
        begin&lt;br /&gt;
            NumRead:= SourceF.Read(Buf, SizeOf(Buf));&lt;br /&gt;
            DestF.Write(Buf, NumRead);&lt;br /&gt;
        end;&lt;br /&gt;
        SourceF.Free;&lt;br /&gt;
        DestF.Free;&lt;br /&gt;
        ShowMessage(&amp;#039;Copy finished&amp;#039;);&lt;br /&gt;
    end;&lt;br /&gt;
end;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
이 방법은 객체지향 파일을 사용한다는 점을 제외하면 비형식화 된 파일을 사용하는 것과 매우 유사합니다.&lt;br /&gt;
&lt;br /&gt;
또한 파일을 복사하는 더욱 간단한 방법을 사용합니다.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;pascal&amp;quot;&amp;gt;&lt;br /&gt;
procedure TfmMain.Button1Click(Sender: TObject);&lt;br /&gt;
var&lt;br /&gt;
    SourceF, DestF: TFileStream;&lt;br /&gt;
begin&lt;br /&gt;
    if OpenDialog1.Execute and SaveDialog1.Execute then&lt;br /&gt;
    begin&lt;br /&gt;
        SourceF:= TFileStream.Create(OpenDialog1.FileName, fmOpenRead);&lt;br /&gt;
        DestF:= TFileStream.Create(SaveDialog1.FileName, fmCreate);&lt;br /&gt;
        DestF.CopyFrom(SourceF, SourceF.Size);&lt;br /&gt;
        SourceF.Free;&lt;br /&gt;
        DestF.Free;&lt;br /&gt;
        ShowMessage(&amp;#039;Copy finished&amp;#039;);&lt;br /&gt;
    end;&lt;br /&gt;
end;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
우리가 원본 파일의 크기(SourceF.size)를 &amp;#039;&amp;#039;CopyFrom&amp;#039;&amp;#039; 메서드에 넘겨주었기 때문에 이것은 전체 파일 내용을 대상 파일로 복사합니다.&lt;br /&gt;
[[Category:StartprogrammingusingObjectPascal]]&lt;/div&gt;</summary>
		<author><name>Onionmixer</name></author>
	</entry>
</feed>