C 언어 파일

모든 데이터 파일은 장비의 대부분은 또한 파일입니다

모든 메모리에서 실행되는 데이터 처리 프로그램을 수행

  1. 개념 종이

    • 프로그램을 저장, 문서, 오디오, 비디오, 데이터, 이미지 및 기타 데이터에 사용되는 파일

    • 파일은 일부 데이터의 디스크 집합에 저장됩니다.

  2. 파일 버퍼는 라이브러리 함수에 의해 운영 메모리의 기간 동안 라이브러리 함수이며, 프로그래머가 저장할 위치를 알 필요가 없다, 단지 파일의 특성을 조작 할 수있는 버퍼 시간이 필요

    • 라인 버퍼

      • 광고 출력 버퍼 무엇 이오 표준 라이브러리 함수, 표준 출력 (스크린)에 시간

      • 이 버퍼를 새로 쳤을 때 소위 라인 버퍼는 버퍼 줄 바꿈입니다

    • 완전 버퍼

      • 정상 이오 표준 라이브러리 함수, 파일 읽기 및 쓰기 데이터는 완전히 버퍼링

      • 줄 바꿈은 버퍼가 가득 것을, 버퍼를 플래시하지, 버퍼를 플러시

      • 버퍼 상쾌한

        • 버퍼가 가득, 버퍼를 플래시

        • 인공 새로 고침 버퍼 FFLUSH (파일 포인터)

        • 이 프로그램은 일반적으로 버퍼를 새로 끝단

    • 버퍼링

      • 파일을 읽고 쓸 때 시스템을 통해 (읽기 쓰기) IO를 호출, 파일은 데이터를 읽고 쓰는

      • 이 시간은 데이터가 바로 파일에 기록되도록, 버퍼가없고, 데이터가 즉시 메모리로 읽어

    • 쓰기 파일의 처리

      • 응용 프로그램 공간 -> 커널 공간 -> 드라이버 -> 하드 디스크에

      • 다른 공간에서 실행되는 응용 프로그램과 커널은 목적은 커널을 보호하는 것입니다

    • 대상 버퍼를 설정

      • 효율성을 개선하기 위해 버퍼를 통해 핵심 중의 수를 줄일 수 있습니다

  3. 분류 디스크 파일

    • 명명 된 저장 영역에 대한 디스크에 보통 파일

      • 바이트 순차적으로 저장소에 물리적으로 이진 컴퓨터 메모리, 그래서 기본적으로 모든의 물리적 디스크 파일 같은,

      • 사용자 또는 운영 체제의 관점에서 (논리적으로)

        • 이 문서는으로 나누어 져

          • 텍스트 파일

            • 등의 문자 인코딩, 일반적인 인코딩 ASCII, 유니 코드에 기반

            • 일반적으로 직접 열려면 텍스트 편집기를 사용할 수 있습니다

            • 가사 파일 (LRC) : 이진 파일

          • 바이너리 파일

            • 이 값을 지정을 의미 하는가 어떤 응용 프로그램 자신에 따라, 값 인코딩을 기반으로

            • 메모리에서의 형태에 따른 메모리에 저장된 데이터를 디스크에 출력

            • 일반적으로 우리는 스스로 판단하거나 데이터 형식을 분석하기 위해 특정 소프트웨어를 사용해야합니다

            • 오디오 파일 (MP3) : 이진 파일

            • 이미지 파일 (BMP) 파일, 픽셀은 두 바이트 ** * ** ##### &&&&& 설명한다

              • * 적색 값을 나타낸다

              • # 녹색의 값을 나타냅니다

              • 블루 값을 나타내는 &

              • 이진 비트 의미를 나타내는

          • 텍스트 파일, 이진 파일 비교

            • 디코딩

              • 문자 기반 텍스트 파일 고정 길이 부호화 쉽게 디코딩하는 단계;

              • 어려운 다수의 디코딩 진 가변 길이 코딩 (다른 이진 파일 형식을 코딩의 여러 가지 방법이있다)인가

            • 공간 활용

              • 평균 (비트 연산)로 표시되는 이진 비트

              • 텍스트는 어떤 의미를 적어도 하나 개의 문자를 파일

  4. 파일 포인터

    • 파일 (대신) 프로그램을 표시하는 데 사용 포인터를 파일, 파일 포인터는 열린 파일에 파일 포인터는 열린 파일을 표시하는 데 사용됩니다 우리

    • 우리는 파일 읽기에 갔을 때, 닫기 등의 동작을, 파일 포인터가, 독서를 통과, 우리는 포인터를 파일 것, 조작 작성하기, 쓰기, 다른 기능을 종료하는 기능은 작동 할 파일을 알 수

    • 정의 파일 포인터의 일반적인 형태

      • FILE * 포인터 변수 식별자

        • 포함 대문자 필요성을 제기 <STDIO.H>

        • 시스템을 제기하는 형식 정의 아웃의 유형에 대한 파일 구조 정보를 사용하여, 파일 이름, 현재 위치의 파일 정보를 포함하는 구조

        • 작업이 우리가 운영하려고하는 파일 포인터 파일을 표시하기 전에 정상적인 상황에서, 우리는 파일을 정의해야합니다

        • , 세부 사항 파일 구조에 대해 관심을 그냥 라이브러리 함수 IO 파일 포인터를 통과 한 다음 내부 정보 파일의 파일 구조에서 작동하지 않고, 파일 조작에 사용 된 실제 프로그래밍 라이브러리 함수

        • FILE 다시 STDIO.H 파일 문서 유형 선언

          • 타입 정의 구조체

          • {

          • 학위 // 버퍼 "전체"또는 "빈"; 짧은 수준

          • 서명되지 않은 플래그; // 파일 상태 플래그

          • 문자의 FD; // 파일 기술자

          • 서명되지 않은 charhold; // 버퍼가 문자를 읽을하지 않은 경우

          • 짧은 bsize 상기 버퍼의 크기 //

          • * 부호 문자 버퍼; // 데이터 버퍼 위치

          • 서명되지 않은 아칸소 *의 curp; // 포인터, 현재의 자신감

          • 서명되지 않은 istemp; // 임시 파일, 표시

          • shorttoken; // 유효성 검사

          • }파일

          • 버퍼와 다음 파일 시스템으로, 각각의 파일은 파일 조작에 관한 정보를 저장하는 파일 형식의 메모리 영역을 개방하는 데 사용되어야한다.

      • 단계 파일 작업 :

        • 파일 포인터 파일 가져 오기 전에 파일을 열려면 읽기 및 쓰기 작업

        • 당신은 읽기 위해 파일을 참조하고 같은 파일 작업을 작성할 수 있습니다

        • 읽기 및 쓰기 작업이 완료된 후, 파일을 닫고, 파일을 파일을 닫습니다 수 더 이상 파일 포인터 동작에 의해

      • 보충

        • C 언어는 세 가지 포인터는 특수 파일을 정의 할 필요가있다, 다음 프로그램을 직접 사용할 수 있습니다

          • 표준 입력 : 기본적는 현재의 표준 입력 단자 (키보드)입니다

          • 표준 출력 : 표준 출력은 기본 전류 단자 (화면) 인

            • 우리는의 printf를 사용하여이 기능을 기본 출력 단자를두고

          • 열려진 : 현재 단말 장치 표준 에러 출력 파일 기본값 (화면)

            • 우리가 프로그램 오류를 사용하는 경우 다음과 같은 경우이 단자 다시 함수 perror는 인쇄

  5. fopen의 파일을 엽니 다

    • 기능 정의 :

      • * 파일하면 fopen (CONST 숯 * 경로 CONST 숯 * 모드);

    • 기능 설명

      • 기능하면 fopen 함수는 기존의 파일을 열 수 있고 (파일 표시) 파일로 파일 포인터를 반환하거나 파일을 생성하고이 파일을 연 다음 표시된 파일로 돌아가

    • 함수 매개 변수

      • 경로 열려있는 파일 : 매개 변수 1

          1. 루트 디렉토리 경로 이름에서 시작하는 절대 경로,

            • "/home/edu/test/test.txt"

          2. 상대 경로

            • "./test/test.txt"

            • "../test/test.txt"

      • 매개 변수 2 : 파일 열기 방식, 즉, 어떤 방법 (읽기 전용, 쓰기 전용, 읽기 - 쓰기 등) 파일을 엽니에서

  6. 파일 FCLOSE을 닫습니다

    • 함수 헤더 파일 :

      • #INCLUDE <STDIO.H>

    • 기능 정의 :

      • INT의 FCLOSE (파일 *의 FP);

    • 기능 설명 :

      • 닫기 FP 파일을 나타냅니다

    • 파일이 더 이상 다른 작업에 대한 파일을 읽고 쓰기를 의미 한 후 파일 만 반복적으로 종료되지 일단 폐쇄하지 않는 파일을 닫습니다 수 있습니다

    • 반환 값 :

      • 성공적인 복귀 0

      • 비 0을 반환 할 수 없습니다

    • 당신은 파일이 성공적으로 종료되었는지 여부를 결정하는 값을 반환 할 수 있습니다

  7. 일단 문자를 읽어

    • 기능 정의

      • INT는 fgetc의 (파일 스트림 *)

    • 기능 설명 :

      • 는 fgetc 바이트 값을 반환 스트림 파일로부터 판독 지시 바이트

    • 반환 값 :

      • 방법의 t에서 : 파일이 EOF를 반환의 끝 부분을 읽어

      • B 방식 : 읽을 수있는 파일의 끝에, 상기 결정된 최종 무엇이 일어 났는지를 결정하기 위해 feof를 사용

      • 무엇이 일어 났는지를 결정하기 위해 feof (파일이 파일 스트림의 끝을 읽을 지 여부를 확인)

        • INT 무엇이 일어 났는지를 결정하기 위해 feof (FILE *의 스트림)

        • 기능 설명 : 무엇이 일어 났는지를 결정하기 위해 feof ()가 파일의 끝이 읽기 전용인지 여부를 검색하는 데 사용됩니다, 파일 포인터 가수 스트림이 fopen을 반환 (). 파일의 끝 아닌 값이 반환되는 경우, 그렇지 않은 경우는 0을 돌려줍니다

        • 반환 값은 파일의 끝이 아닌 값 담당자에 도달 반환

    • 기능 정의 :

      • INT fputc (INT C, 파일 스트림 *)

    • 기능 설명

      • fputc (C)의 값으로 표시되는 파일 스트림에 기록

    • 반환 값

      • 결과는 성공하면, 출력 바이트의 반환 값

      • 출력이 실패하면 EOF를 반환

  8. 인 읽기와 문자열을 쓰기

    • * CHAR는 fgets (숯 * s의 INT 크기, 파일 스트림 *);

      • 스트림 파일로부터 문자에 언급 읽고, 읽을 때 바이트 크기-1 정거장 파일을 읽는 줄 바꿈 또는 최종 정지 충돌, 또는 읽기, 읽기 내용 뒤에 문자열의 끝으로, 0 \ 값이 될 것입니다

      • 반환 값 : 대상 배열의 첫 번째 주소의 성공적인 복귀, 즉 s입니다

        • NULL을 반환 할 수 없습니다

    • INT fputs (CONST 숯 * s의 파일 스트림 *);

      • 기능 :

        • 문자열로 표현 스트림의 파일에 기록들 지적

      • 반환 값

        • 바이트 수는 성공적으로 기록 돌려줍니다

        • 실패는 반환 -1

  9. 파일 FREAD 읽기

    • 기능 정의 :

      • 이 size_t의 FREAD (공극의 * PTR, size_t와 크기를 size_t nmemb 파일 * 스트림);

    • 기능 설명 :

      • FREAD 함수는 스트림 파일 데이터의 사이즈 PTR가 가리키는 메모리에 저장 한 바이트 nmemb 블록의 합계이다로부터 판독 지시

    • 반환 값 :

      • 블록의 실제 수는 읽기

    • 예를 들면

      • INT 인분;

      • NUM = FREAD (STR, 100,3, FP);

      • 상기 메모리에 저장된 FP 나타내는 파일로부터 판독 된 바이트의 수는 각각 100 바이트에 대한 판독, 총 세 인수 str NUM 값을 반환 지적

      • 반환 값은 300 바이트 NUM 3을 읽을 경우

      • 판독이 200 바이트와 동일보다 큰 경우, 반환 값은 2,보다 작은 300 바이트

      • 판독 된 바이트의 수는 1을 반환 초과, 미만 또는 200 바이트의 100 바이트와 동일

      • 미만 100 바이트는 0을 반환

  10. 에 fwrite 쓰기 파일

    • 기능 정의 :

      • 이 size_t에 fwrite (공극의 * PTR, size_t와 크기를 size_t nmemb 파일 * 스트림);

    • 기능 설명 :

      • 메모리 데이터에 fwrite 함수 PTR 포인트가 표시된 문서의 스트림에 기록

    • 반환 값 :

      • 성공 반환 값은 기본 입출력 유닛의 수는 실행이 실패한 경우, 반환 값은 0이된다

    • 참고 :

      • 에 fwrite 함수는 파일 - 메모리 데이터가 출력된다

      • 이 메모리에 판독된다 FREAD 함수로서 데이터 파일

  11. 서식 파일 기능은 읽기 및 쓰기

    • 함수 호출

      • fprintf와 (파일 포인터, 형식 문자열 출력 테이블 컬럼);

      • fscanf (파일 포인터, 형식 문자열, 테이블 열을 입력)

    • 기능 :

      • 디스크 또는 출력 파일에서 문자를 읽기

    • 이 같은 fprintf와와의 printf 함수 :

      • fprintf와 기능은 파일에 데이터를 출력하는 동안의 printf 데이터는 화면 (표준 출력)에 출력되고

    • 유사한 fscanf, scanf와

      • scanf와 키보드 (표준 입력) 입력을 얻는 것입니다, 입력 fscanf는 파일 포인터 표시 파일에서 획득

  12. 읽기 및 쓰기 임의

    • 파일 읽기 및 위치에 기록하고 읽기 및 쓰기, 랜덤 액세스 호출되는 기록해야 할 내부의 포인터의 위치를 ​​이동할 수 있습니다. 임의의 키를 읽기 및 쓰기 위치 포인터는 파일을 찾으라고 요구에 따라 이동합니다.

    • 전체 파일 위치 기능이

      • 되감기 기능은 기록 위치를 재설정

        • 보이드 되감기 (파일 포인터);

        • 기능 :

          • 첫 번째 파일에 파일 내부의 포인터의 위치

        • 전화 형태 :

          • 텍스트 파일 포인터);

      • ftell은 읽기 및 파일의 수를 쓰기 파일 위치 파일의 시작 부분에서 측정

        • 정의 기능 :

          • 긴 ftell은 (파일 포인터);

        • 기능 기능

          • 현재 파일 스트림 읽기와 위치를 쓰기 얻을 수 있습니다

        • 반환 값 :

          • (사용할 수있는 바이트의 파일 번호부터 시작) 현재의 read 위치를 반환

      • fseek과 위치 결정 함수 포인터 (기입 위치)

        • fseek과 함수 (즉, 일반적으로 실시 예 B를 획득하기 위해 필요로 파일을 여는 데 이진 파일)

        • 정의 함수

          • INT의 fseek는 (파일 * 스트림에 긴 INT 어디서 오프셋);

          • // INT fseek는 (포인터 파일 형식 변위량 시작점)

        • 기능 :

          • 파일 쓰기 위치

        • 매개 변수 :

          • 시작 위치 어디서

            • 파일 SEEK_SET 0의 시작

            • 현재 파일 위치 SEEK_CUR (1)

            • 파일 SEEK_END이 종료

          • 변위량

            • 출발점에서 시작, 앞으로, 뒤로 바이트를 이동합니다. 그것은 음수가 될 수 있습니다. 정방향이 파일의 끝을 이동하는 파일은 엔드 네거티브 오프셋

        • 반환 값

          • 호출이 성공하면 오류가 errno에 에러 코드가 저장됩니다, -1이 반환되는 경우는, 0을 반환

  13. 파일 암호화 / 복호화

    • 대칭 암호화 시스템은 기존의 고전적인 암호화 시스템 전략이다. 대칭 암호 시스템, 즉, 소위 사이드 A 및 암호화 된 복호화 키 B 국은 키를 공유한다. 키 암호화 키를 사용하여 당사자는함으로써 암호문을 생성하는, 비밀 파일 조작을 암호화하는 단계; 파티 B하여 평문을 생성 실시 복호화 동작에 대하여 생성 된 암호화 파일을 암호화하기 위해 같은 키를 사용하여 키를 해독

추천

출처www.cnblogs.com/fengzi759/p/11618722.html