vb6의 목록 형태의 파일 시스템입니다. 텍스트 파일 읽기 및 쓰기

모든 프로그램은 데이터를 디스크에 저장하고 디스크에서 읽어야 합니다. 예를 들어 프로그램 설정을 저장하는 데 필요하며 사용자는 프로그램을 좋아하지 않을 것이므로 다음에 시작할 때 다시 구성해야 합니다.

이 기사에서는 우리 얘기하자 Visual Basic을 사용하여 텍스트 파일 작업에 대해 설명합니다.

파일 설명자

파일 작업을 하려면 운영 체제 I/O 채널을 사용합니다. 즉, 모든 파일 열기고유한 번호가 있습니다.

Visual Basic에는 다음과 같은 함수가 있습니다. 무료파일, 파일 작업에 사용할 수 있는 사용 가능한 채널의 수를 반환합니다. 사용 가능한 채널이 없으면 오류가 발생합니다.

자유파일[(범위번호) ]

범위번호- 자유 채널의 값 범위를 정의할 수 있는 선택적 매개변수인 경우 범위번호= 0(기본값)인 경우 채널 번호는 1 - 255 범위에서 반환되고, 1인 경우 256 - 511 범위에서 반환됩니다.

마이파일 = 프리파일 "MyFile 변수에 무료 채널이 할당되었으며 이제 파일 작업에 사용할 수 있습니다.

텍스트 파일 작업

가장 자주 텍스트 파일이 발생합니다. 텍스트 파일은 ASCII(정보 교환을 위한 미국 표준 코드) 문자 집합으로 구성됩니다.

데이터 쓰기/읽기를 시작하기 전에 파일을 열어야 합니다. 이 작업은 연산자를 사용하여 수행됩니다. 열려 있는 (파일 이름) 다음으로 #파일 번호, 어디:

입력- 읽기 위해 파일을 엽니다. 파일이 존재하지 않으면 오류가 발생합니다.

산출- 쓰기의 경우 파일이 없으면 생성되고, 파일이 있으면 덮어씁니다.

추가- 추가는 파일이 없으면 생성하고, 파일이 있으면 파일 끝에 데이터를 추가합니다.

텍스트 파일 읽기는 두 가지 방법으로 수행할 수 있습니다. 문자별로 읽습니다. 이 경우 함수를 사용합니다. 입력(Number_of_characters_read, #파일 번호) 한 줄씩 함수가 사용됩니다. 라인 입력 #파일 번호, 어디서_읽을 것인가.

희미한 내 파일

희미한 S를 문자열로 "읽은 데이터를 저장하기 위한 변수

마이파일 = 프리파일

#MyFile로 입력하려면 Open("C:\TEST.txt")

라인 입력 #MyFile, S "TEST.TXT 파일의 첫 번째 줄을 변수 S로 읽어옵니다.

희미한 내 파일 "무료 파일에 대한 변수를 선언합니다.

Dim i를 정수로 표시 "루프용 변수

Dim tS를 문자열로 "문자열을 읽는 변수

희미한 S를 문자열로 "최종 데이터를 저장하기 위한 변수

마이파일 = 프리파일 "파일 작업을 위한 무료 채널 할당

"읽기 위해 TEST.TXT 파일을 엽니다.

i = 1 ~ 5의 경우

라인 입력 #MyFile, tS "TEST.TXT 파일을 한 줄씩 읽는 중

i => 5이면 S = tS "다섯 번째 줄이면 변수 S에 저장하세요.

다음은 내가

Close #MyFile "파일을 닫습니다.

Dim MyFile "무료 파일에 대한 변수 선언

Dim S As String "읽은 데이터를 저장하기 위한 변수

마이파일 = 프리파일 "파일 작업을 위한 무료 채널 할당

#MyFile로 입력하려면 Open("C:\TEST.txt") "읽기 위해 TEST.TXT 파일을 엽니다.

S = 입력$(LOG(1), 1) "전체 파일을 변수 S로 읽어 들입니다.

Close #MyFile "파일을 닫습니다.

파일에 쓰기 위한 연산자가 있습니다 인쇄 #파일 번호, 데이터그리고 쓰다 #파일 번호, 데이터. 이 연산자들 사이의 유일한 차이점은 쓰다따옴표로 데이터를 씁니다. 인쇄인용없이.

아래 코드는 C:\ 드라이브에 생성됩니다. 새로운 파일 TEST.TXT를 실행하고 두 줄을 작성합니다. 첫 번째 줄은 따옴표 없이, 두 번째 줄은 따옴표로 묶습니다.

희미한 내 파일 "무료 파일에 대한 변수를 선언합니다.

마이파일 = 프리파일 "파일 작업을 위한 무료 채널 할당

#MyFile로 출력하려면 Open("C:\TEST.txt")을 사용하세요. "쓰기를 위해 TEST.TXT 파일을 엽니다.

Print #MyFile, "이 줄은 Print 운영자가 쓴 것입니다. 따옴표가 없습니다..."

#MyFile을 작성하세요. "이 줄은 Write 연산자에 의해 작성되었으며 따옴표로 묶여 있습니다..."

Close #MyFile "파일을 닫습니다.

그게 다야. 이미 이해하셨겠지만 연산자는 파일을 닫는 데 사용됩니다. 닫다 #파일 번호, 여기서, # 파일 번호표시할 필요는 없습니다.

이 기사는 약간 조잡하지만 초보 프로그래머에게 유용할 것입니다. 다음번에는 바이너리 파일 작업에 대해 이야기하겠습니다.

윈도우

작업의 목표: VB 6 언어 연산자를 학습하고 사용하여 파일 작업하기 다양한 방식: 순차(텍스트) 파일, 랜덤 액세스 파일, 바이너리 파일. 도구 연구 및 사용 흔한대화파일 열기 및 저장, 글꼴 및 색상 선택, 개체 사용 클립보드간단한 텍스트 편집기를 만드는 예를 사용하여 텍스트 조각을 저장합니다.

제어 질문:

1. 어떤 방법으로 텍스트 파일을 열 수 있나요? 텍스트나 기타 열려 있는 파일을 닫는 방법은 무엇입니까?

2. 쓰기용으로 열려 있는 텍스트 파일에 데이터는 어떻게 기록됩니까? Write문과 Print문의 차이점은 무엇입니까?

3. 열린 텍스트 파일에서 데이터를 어떻게 읽나요? 입력 및 라인 입력 연산자는 서로 어떻게 다릅니까? 파일에서 지정된 수의 문자를 읽는 데 사용할 수 있는 함수는 무엇입니까? 파일의 모든 문자를 읽는 방법은 무엇입니까?

4. 무엇입니까? 맞춤 유형데이터 및 무작위 액세스 파일 작업 시 이 개념이 사용되는 방식( raf)?

5. 파일에서 어떤 연산자를 사용하여 raf레코드도 파일로 읽어옵니다. raf새로운 항목이 작성되고 있습니까?

6. 파일 작업 시 인덱스는 어떤 목적으로 결정되고 사용되나요? raf?

7. 바이너리 파일을 사용하면 어떤 특징이 있나요? 어떻게 열리나요? 바이너리 파일에서 읽고 바이너리 파일에 쓰는 작업은 어떻게 수행되나요?

8. 컨트롤 사용방법 흔한대화텍스트 파일의 내용을 텍스트 필드에 로드하려면? 동일한 컨트롤을 사용하여 편집된 텍스트를 텍스트 파일에 저장하려면 어떻게 해야 합니까?

9. 컨트롤 사용방법 흔한대화파일 내용을 다운로드하려면 RTF현장에서 부자텍스트 상자? 동일한 컨트롤을 사용하여 편집된 텍스트를 파일에 저장하는 방법 RTF?

10. 컨트롤 사용방법 흔한대화글꼴 매개변수 값을 변경하고 창의 텍스트 색상을 변경하려면 텍스트 상자(또는 창에서 선택한 텍스트 부분 부자텍스트 상자)?

예제 7.1. 텍스트 파일에 쓰기(및 텍스트 파일에서 읽기) "직원 정보"(각 라인에는 직원의 식별 번호, 성명, 생년월일 및 생년월일이 포함됨)를 보여주는 애플리케이션을 생각해 보십시오. 행은 테이블을 형성하며, 화면 형태 4개의 콤보 상자 컨트롤(그림 7.1)을 시뮬레이션하여 Style 속성 값이 1 – SimpleCombo인 Comb(i) 개체의 배열을 형성합니다.

삭제할 줄을 선택하세요.", vbExclaim

Comb(j).RemoveItem i

'끼워 넣다 새로운 항목테이블에:

비공개 구독 mnuInsert_Click()

i% = 빗(0).ListIndex

만약 내가< 0 Then

MsgBox "앞에 삽입할 줄을 강조하세요", vbExclaim

Comb(0).AddItem InputBox("번호 입력"), i

Comb(1).AddItem InputBox("이름을 입력하세요"), i

Comb(2).AddItem InputBox("생일을 입력하세요."), i

Comb(3).AddItem InputBox("출생지를 입력하세요."), i

' 테이블 항목 변경:

비공개 구독 mnuUpdate_Click()

i% = 빗(0).ListIndex

만약 내가< 0 Then

MsgBox "수정할 행을 강조 표시합니다", vbExclaim

Comb(0).List(i) = InputBox("번호를 입력하세요", Comb(0).List(i))

Comb(1).List(i) = InputBox("이름을 입력하세요", Comb(1).List(i))

Comb(2).List(i) = InputBox("생일을 입력하세요.", Comb(2).List(i))

Comb(3).List(i) = InputBox("출생지를 입력하세요.", Comb(3).List(i))

' 전체 테이블 지우기:

비공개 구독 mnuClear_Click()

' 텍스트 파일의 정보로 테이블 채우기:

비공개 구독 mnuLoad_Click()

#1로 입력하려면 "person.txt"를 엽니다.

입력 #1, numb, fio, bdate, bloc

빗(0).AddItem 마비

빗(1).AddItem 파일

Comb(2).AddItem bdate

Comb(3).AddItem 블록

' 텍스트 파일에 테이블 정보 쓰기:

비공개 구독 mnuSave_Click()

N% = 빗(0).ListCount

#1로 출력하려면 "person.txt"를 엽니다.

i = 0에서 N - 1로

마비 = Val(Comb(0).List(i))

fio = 빗(1).목록(i)

bdate = CDate(Comb(2).List(i))

블록 = 빗(3).목록(i)

#1, numb, fio, bdate, bloc 쓰기

' 애플리케이션 종료:

비공개 구독 mnuExit_Click()

예제 7.2 . 컨트롤 사용을 보여주는 애플리케이션을 고려해보세요. 흔한대화파일을 열고 저장하고, 글꼴과 색상을 선택하고, 텍스트를 편집합니다.

파일 형식 TXT텍스트 필드(그림 7.2의 왼쪽 필드)에 로드되고 파일 형식이 RTF- 현장에서 부자텍스트 상자(그림 7.2의 오른쪽 여백).

물체

수업

물체

재산

물체

자산 가치

“일반 패널

대화"

열기/탭으로 저장

글꼴 탭

색상 탭

테이블에는 메뉴 명령의 속성이 표시되지 않습니다. 폰트, 색상그리고 편집하다. 아래는 메뉴 명령에만 적용되는 절차 코드입니다. 파일 (열려 있는, 구하다그리고 구하다처럼). 다른 메뉴 명령에 대한 코드를 작성하는 것이 이 작업의 두 번째 작업 주제입니다.

비공개 구독 mnuOpen_Click()

CommonDialog1.ShowOpen

F$ = CommonDialog1.FileName

Right(F, 3) = "rtf"인 경우

RichTextBox1.LoadFile F

ElseIf Right(F, 3) = "txt" 그러면

#1로 입력하려면 F를 엽니다.

S$ = 입력(N, 1)

비공개 구독 mnuSave_Click()

CommonDialog1.ShowSave

F$ = CommonDialog1.FileName

비공개 구독 mnuSaveAs_Click()

CommonDialog1.ShowSave

F$ = CommonDialog1.FileName

RichTextBox1.SaveFile F, rtfRTF

이 작업을 수행하는 동안 학생은 2가지 작업을 완료해야 합니다.

연습 1. 과제를 완료하는 과정에서 학생들은 VB 6에서 임의 액세스 파일 작업에 사용할 수 있는 기능을 마스터합니다( 영국 공군무작위의입장파일).

주어진 데이터베이스 테이블에 대해 사용자 데이터 유형이 선언되고, 이 유형의 변수가 선언되고(튜토리얼, 108-112페이지), 사용자 유형 변수를 사용하는 프로시저가 컴파일 및 디버깅됩니다.

특히 메뉴 명령에 대한 절차가 구현됩니다. 파일에 쓰기영국 공군그리고 파일에서 읽기영국 공군. 예제 7.1에서와 같이 객체 배열을 사용하여 데이터를 편집합니다. 콤보상자및 메뉴 편집하다 5개의 하위 메뉴 명령 사용: 메모 추가, 항목 삭제, 항목 삽입, 항목 수정, 테이블 지우기.

옵션 1.

"Car Service" 데이터베이스의 "Car" 테이블(표 7.1)에 대한 사용자 정의 데이터 유형을 선언합니다.

자동차

자동차

오작동

표 7.1의 맨 아래 줄에는 필드 유형이 나와 있습니다.

옵션 2.

"Car Service" 데이터베이스의 "Faults" 테이블(표 7.2)에 대한 사용자 정의 데이터 유형을 선언합니다.

오작동

이름

오작동

가격

표 7.2의 맨 아래 줄에는 필드 유형이 나와 있습니다.

예제 애플리케이션 7.1을 템플릿으로 사용하여 표시된 테이블에 대한 데이터 입력 및 편집을 구성하고, 해당 데이터를 랜덤 액세스 파일에 쓰고, 랜덤 액세스 파일에서 데이터를 읽습니다. 예제 7.1에서와 같이 이러한 작업은 그림 7에 표시된 메뉴 명령의 작업으로 구현됩니다. 7.1.

작업 2. 과제 중에 학생들은 애플리케이션을 간단한 텍스트 편집기로 볼 수 있도록 하는 예제 애플리케이션 2에 새로운 기능을 추가합니다.

옵션 1 흔한대화메뉴 명령 구현 폰트그리고 색상(하위 메뉴 포함 캐릭터 색상그리고 배경색). 이 명령을 사용하면 창에서 선택한 텍스트 조각에 대한 글꼴(이름, 스타일 및 크기)을 선택할 수 있습니다. 부자텍스트 상자, 선택한 조각의 문자 색상을 선택하고 전체 창의 배경색을 선택합니다.

메모:객체를 설정할 때 흔한대화(Custom) 속성을 사용하여 글꼴을 선택하려면 Flags 속성 값을 1, 2 또는 3으로 설정해야 합니다(183페이지 매뉴얼 참조).

옵션 2. 컨트롤 사용 흔한대화메뉴 명령 구현 편집하다(하위 메뉴 복사, 자르다그리고 반죽), 그 목적은 다음과 같습니다. 사자또는 삭제선택한 텍스트 조각의 클립보드로, 그리고 끼워 넣다클립보드 내용 중 선택된 텍스트 영역으로 이동합니다.

메모:클립보드로(객체 클립보드) SetText 및 GetText 메서드를 사용할 수 있습니다.

클립보드. SetText RichTextBox1.SelText

RichTextBox1.SelText = 클립보드. 텍스트 가져오기

8. 정보 저장 및 읽기

프로그램이 완료된 후 메모리에 생성된 모든 데이터가 손실되지 않도록 하려면 정보를 하드 드라이브에 저장할 수 있어야 합니다. 그렇지 않으면 모든 정보가 흔적도 없이 사라집니다. 데이터는 다양한 방법으로 저장하고 읽을 수 있습니다. 다양한 크기와 형식의 정보로 작업하려면 바이너리 및 텍스트 파일을 사용할 수 있습니다. 소량의 정보를 저장하려면 Windows 레지스트리를 사용할 수 있습니다. 그리고 가장 복잡한 작업의 경우 데이터베이스를 사용하는 것이 현명합니다.

8.1. 연산자를 사용하여 파일 열기 "열려 있는 "

파일은 외부 저장 장치의 이름이 지정된 영역입니다. 데이터는 컴퓨터 메모리에 "라이브"되어 있고 파일은 하드 드라이브에 "라이브"되어 있습니다. 이 프로그램은 파일을 직접 사용하지 않고 운영 체제를 중개자로 사용합니다.

파일 이름에는 두 가지 유형이 있습니다. 전체 - 파일 이름 외에도 외부 미디어에 있는 파일 위치도 표시됩니다(예: “C:\Program Files\Microsoft Visual Studio\VB98\VB 6.EXE") ) 및 짧은 - 파일 이름만(VB 6.EXE )입니다. 파일 위치를 지정하지 않으면 현재 폴더(기본적으로 응용 프로그램이 있는 폴더)에서 검색됩니다. 직접 파일 이름은 실제 고유 파일 이름과 해당 확장자의 두 부분으로 구성됩니다. 이름 자체는 파일을 식별하며 확장자는 일반적으로 파일 형식이나 해당 파일을 만든 프로그램을 나타냅니다.

파일 작업을 시작하기 전에 운영 체제에 문의해야 합니다. 바늘 (설명자) 파일. 이를 얻으려면 "FreeFile" 기능을 사용하십시오. 그런 다음 "Open" 연산자를 사용하여 이 포인터를 필요한 파일과 연결합니다. 이 후에야 프로그램이 작동할 수 있습니다. 파일을 여는 구문은 다음과 같습니다.

'무료 파일 포인터를 얻어 변수에 할당

FileHandle% = FreeFile

' 파일을 엽니다

파일 경로 열기_

[#]파일 핸들%로

...(파일 작업)

[#]파일 핸들 닫기

· FileHandle % - 파일 포인터를 저장하는 변수입니다.

· FreeFile – 파일 포인터를 반환하는 함수의 이름입니다.

· 공개 – 운영자 이름

· FilePath – 전체 파일 이름.

· For – 키워드 다음에 파일 액세스 모드에 대한 설명이 옵니다.

· 모드 - 파일 액세스 모드(표 15 참조)

표 15

파일 액세스 모드

액세스 모드

설명

추가

기존 텍스트 파일의 끝에 데이터를 추가합니다. 파일이 존재하지 않으면 생성됩니다.

바이너리

바이너리 모드로 파일 열기, 즉 바이트 집합으로. 파일이 존재하지 않지만 생성될 경우

입력

텍스트 형식으로 읽기 위해 파일 열기

산출

텍스트 파일을 작성하려면 파일을 엽니다. 이 경우 기존의 모든 정보는 삭제됩니다. 파일이 존재하지 않지만 생성될 경우

무작위의

임의 액세스 모드로 파일을 엽니다. 이 모드는 간단한 레코드 작업에 사용됩니다. 파일이 존재하지 않지만 생성될 경우

· 액세스 – 액세스 유형에 대한 설명이 뒤따르는 선택적 키워드입니다.

· AccessType – 액세스 유형에 대한 설명:

· 읽기 – 읽기;

· 쓰기 – 기록;

· 읽기 쓰기 – 읽고 쓰기.

메모

Append 및 Output 액세스 모드에서는 쓰기 액세스 유형만 사용할 수 있고, 입력만 읽기만 사용할 수 있으며, Binary 및 Random에서는 세 가지 액세스 유형을 모두 사용할 수 있습니다.

· LockType은 사용자 프로그램이 이 파일을 사용하는 동안 다른 프로그램이 이 파일을 사용할 수 있는지 여부를 결정하는 선택적 매개변수입니다. 일반적으로 네트워크 작업과 관련이 있습니다(표 16 참조).

표 16

LockType 매개변수에 가능한 값

의미

설명

공유됨

필요한 권한을 가진 모든 사용자는 파일에 대한 전체 액세스 권한을 갖습니다.

읽기 잠금

파일 읽기는 차단되지만 쓰기는 허용됩니다.

쓰기 잠금

파일 쓰기는 차단되지만 읽기는 허용됩니다.

읽기 쓰기 잠금

읽기와 쓰기 모두 금지되어 있습니다.

· 키워드 뒤에 파일 포인터가 오는 것도 마찬가지입니다.

· #은 그 뒤에 오는 값이 파일 포인터임을 나타내는 기호입니다.

· Len은 항목 길이를 지정하는 매개변수가 뒤에 와야 하는 선택적 키워드입니다.

· CharInBuffer % - 무작위 액세스 모드(Random)로 열린 파일의 레코드 길이입니다.

· Close는 지정된 핸들과 연관된 파일을 닫는 명령문입니다.

작업이 끝나면 파일을 닫는 것이 중요합니다. "Close" 문은 파일 포인터와 관련 메모리 영역을 해제합니다.

파일로 작업할 때, 즉 파일을 읽을 때 파일의 끝을 결정하는 것이 매우 중요합니다. EOF(파일 끝) 함수를 사용하여 정의할 수 있습니다.

EOF(파일 핸들)

· EOF – 함수 이름;

· FileHandle은 끝이 결정되는 파일에 대한 포인터입니다.

이 함수는 파일 끝에 도달하면 True를 반환하고, 그렇지 않으면 False를 반환합니다.

8.2. 텍스트 파일 읽기 및 쓰기

텍스트 파일은 "입력", "출력" 또는 "추가" 액세스 모드에서 열립니다(표 15 참조). 이 모드의 특징은 인쇄 가능한 특정 문자에만 작동한다는 것입니다. 서비스 기호로 작업하는 것은 쓸모가 없습니다.

정보를 기록하려면 "Print"와 "Write"라는 두 가지 연산자를 사용하십시오. 해당 구문은 다음과 같습니다.

#FileHandle%, VarBuffer [;] 인쇄

#FileHandle%, VarBuffer [;] 쓰기

· 인쇄/쓰기 – 연산자 키워드.

· #FileHandle % - 정보가 저장될 파일을 가리키는 포인터입니다.

· VarBuffer – 파일에 기록될 값입니다.

· ; – 텍스트 파일에 쓸 때 사용되는 선택적 매개변수는 다음 값이 같은 줄에 기록되고, 없으면 다음 값에 기록된다는 의미입니다.

파일에서 정보를 읽으려면 "Input" 및 "Line Input" 연산자를 사용하십시오. 구문은 서로 유사합니다.

라인 입력 #FileHandle%, VarBuffer

#FileHandle%, VarBuffer 입력

· 라인 입력 / 입력 – 연산자 키워드.

· #FileHandle % - 정보를 읽을 파일에 대한 포인터입니다.

· VarBuffer – 정보를 읽어올 변수입니다.

"라인 입력"과 "입력" 연산자의 차이점은 첫 번째는 텍스트 파일에만 사용되고 두 번째는 모든 파일에 사용된다는 점입니다. 텍스트 파일의 경우 "입력"은 첫 번째 구분 기호까지 한 줄의 데이터를 읽습니다(텍스트 데이터의 경우 구분 기호는 ","(쉼표)이고 숫자 데이터의 경우 ""(공백) 및 ",") , 그리고 "라인 입력"은 구분 기호를 무시하고 전체 라인을 한 번에 읽습니다.

메모

Visual Basic에는 이전에 생성된 파일의 형식을 제어할 수 있는 방법이 없습니다. 따라서 기호 "2"는 해당 숫자로 읽을 수 있으며 그 반대도 마찬가지입니다.

8.3. 바이너리 파일 작업

파일 열기 위치 바이너리 형식"바이너리" 모드의 "Open" 연산자입니다. 이 모드의 특징은 파일 작업이 특정 바이트에만 집중된다는 것입니다. Visual Basic은 파일에서 원하는 위치를 직접 지정할 수 있으므로 이 모드를 − 직접 액세스 모드. 이 모드의 또 다른 특징은 파일을 다시 열지 않고도 파일의 다른 부분에 동시에 정보를 쓰고 읽을 수 있는 기능입니다. 바이너리 모드로 열린 파일에 쓰는 작업은 다음 구문을 사용하여 수행됩니다.

#FileHandle%, , NameVar 넣기

· Put - 정보 기록 운영자의 이름입니다.

· RecNumber – 정보가 기록될 파일의 ​​바이트 번호(선택적 매개변수).

· NameVar는 내용이 파일에 기록될 변수입니다.

바이너리 모드에서 파일의 정보 읽기는 다음 연산자를 사용하여 수행됩니다.

#FileHandle%, , NameVar 가져오기

· Get – 정보 기록 운영자의 이름입니다.

· FileHandle % - 파일 핸들입니다.

· RecNumber – 정보를 읽을 파일의 바이트 번호(선택적 매개변수).

· NameVar – 읽은 정보가 배치될 변수의 이름입니다.

바이너리 모드는 정보 바이트에 중점을 두기 때문에 파일에서 읽을 때 버퍼 변수에는 엄격하게 정의된 유형이 있어야 합니다. "바이트"이면 바이트의 숫자 값을 읽거나 고정 길이의 문자를 읽습니다. 한 문자의 경우 바이트는 바이트 크기에 해당하는 코드인 ANSI 문자로 읽혀집니다. 이 문자는 텍스트 파일의 경우에는 얻을 수 없는 제어 문자일 수도 있습니다.

메모

"RecNumber" 매개변수가 없으면 정보 쓰기 또는 읽기는 이전에 작업했던 파일 다음 바이트에서 발생합니다.

8.4. 그래픽 조작

파일에서 그래픽 이미지를 저장하고 추출할 수도 있습니다. 비트맵이나 아이콘 파일에서 이미지를 추출하고 이를 "PictureBox" 및 "Image" 컨트롤의 "Picture" 속성에 할당하려면 다음 구문과 함께 "LoadPicture()" 함수를 사용합니다.

ImageCtrl.Picture = LoadPicture(파일 경로)

· ImageCtrl – 이미지 창 컨트롤, 이미지 컨트롤 또는 양식의 이름입니다.

· LoadPicture – 함수 이름;

· FilePath – 전체 파일 이름.

SavePicture ImageCtrl .Picture, FilePath

· SavePicture – 운영자 이름;

· ImageCtrl – 이미지 창 컨트롤, 이미지 컨트롤 또는 양식의 이름입니다.

· 그림 - 이미지를 담당하는 개체 속성의 이름입니다.

· FilePath – 디스크에서의 위치를 ​​나타내는 파일의 전체 이름입니다.

8.5. 레지스트리의 데이터 작업

Windows 레지스트리를 사용하면 작은 정보 조각을 문자 형식으로 저장할 수 있습니다. Visual Basic에는 액세스하는 데 사용할 수 있는 네 가지 프로시저가 있습니다. 사용하기는 매우 쉽지만 한 가지 주요 단점이 있습니다. 즉, 특정 레지스트리 키인 "MyComputer\HKEY_CURRENT_USER\Software\VB and VBA Program Settings"의 데이터에만 액세스할 수 있다는 것입니다. 레지스트리의 다른 섹션에 액세스하려면 "Win ​​32 API"라는 특수 기능을 사용해야 합니다.

Windows 레지스트리의 Visual Basic 섹션에서 설정 값을 얻으려면 다음 기능을 사용해야 합니다.

MyString = GetSetting(VBKeyName, 섹션, 키 [,기본값])

· MyString – 함수에서 반환된 값을 저장하는 문자열입니다.

· GetSetting – 함수 이름.

· VBKeyName은 내부 VB/VBA 하위 키의 이름인 문자열 값입니다.

· Key는 섹션의 매개변수 이름을 나타내는 문자열 값입니다.

· 기본값 - 선택적 인수로, 오류(매개변수 누락)가 발생한 경우 해당 값이 반환됩니다.

Windows 레지스트리에 값을 저장하려면 다음 명령문을 사용하십시오.

SaveSetting VBKeyName, 섹션, 키, MyString

· SaveSetting – 운영자 이름.

· MyString은 발견된 값이 배치될 문자열 변수입니다.

특정 하위 키의 모든 매개변수 값을 포함하는 레지스트리에서 배열을 얻으려면 다음 함수를 사용하십시오.

MyVariant = SetAllSettings(VBKeyName, 섹션)

· MyVariant는 함수에서 반환된 "Variant" 유형의 값 배열입니다.

· SetAllSettings – 함수 이름.

· 섹션 – 특정 애플리케이션의 섹션 또는 하위 섹션을 나타내는 문자열 값입니다.

매개변수의 전체 섹션을 제거하려면 다음 구문이 포함된 명령문을 사용하십시오.

삭제설정 VBKeyName, 섹션, 키

· DeleteSetting – 운영자 이름.

자가 테스트를 위한 테스트 문제

  1. 일부 정보를 어떻게 장기적으로 저장할 수 있습니까?
  2. 파일이란 무엇입니까?
  3. 어떤 파일 이름을 알고 있나요?
  4. "Open" 연산자의 구문을 제공하십시오. 매개변수의 목적을 설명합니다.
  5. 여러 애플리케이션이 동시에 하나의 파일에 대한 액세스를 공유하려면 어떻게 해야 합니까?
  6. 파일의 정보가 모두 소모되었는지 확인하는 방법은 무엇입니까?
  7. 파일 작업 후에는 닫는 것이 권장되는 이유는 무엇입니까?
  8. 텍스트 파일 모드와 바이너리 파일 모드의 차이점은 무엇이라고 보시나요?
  9. 텍스트 파일 모드에서 데이터를 어떻게 읽고 쓰나요?
  10. 바이너리 파일 모드에서 데이터를 어떻게 읽고 쓰나요?
  11. 파일 작업 시 "인쇄" 연산자와 "쓰기" 연산자의 차이점은 무엇입니까?
  12. 파일 작업 시 "입력" 연산자와 "라인 입력" 연산자의 차이점은 무엇입니까?
  13. 그래픽 데이터로 어떻게 작업할 수 있나요?
  14. Windows 레지스트리 작업의 기본 원칙은 무엇입니까?



맨 위