C語(yǔ)言程序設(shè)計(jì) 課件 第10章 文件_第1頁(yè)
C語(yǔ)言程序設(shè)計(jì) 課件 第10章 文件_第2頁(yè)
C語(yǔ)言程序設(shè)計(jì) 課件 第10章 文件_第3頁(yè)
C語(yǔ)言程序設(shè)計(jì) 課件 第10章 文件_第4頁(yè)
C語(yǔ)言程序設(shè)計(jì) 課件 第10章 文件_第5頁(yè)
已閱讀5頁(yè),還剩31頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

第十章文件學(xué)習(xí)時(shí)要關(guān)注以下幾個(gè)問(wèn)題:(1)C語(yǔ)言中文件操作的基本模式,包括打開(kāi)文件、讀取文件、寫(xiě)入文件、關(guān)閉文件等;(2)文件讀寫(xiě)操作的若干方法;(3)如何定位文件位置指針,以便進(jìn)行讀寫(xiě)操作。第十章文件目錄§10.1文件的概念§10.2文件類(lèi)型指針§10.3文件操作§10.4小結(jié)

§10.1文件的概念文件的概念文件是一組相關(guān)數(shù)據(jù)的有序集合。C語(yǔ)言中的文件為流式文件,即把文件看做是一個(gè)有序的字符流。文件通常駐留在外存上,在使用時(shí)才調(diào)入內(nèi)存。從數(shù)據(jù)的組織來(lái)看,文件分為兩類(lèi):文本文件(又稱(chēng)ASCII碼文件)和二進(jìn)制文件。第十章文件目錄§10.1文件的概念§10.2文件類(lèi)型指針§10.3文件操作§10.4小結(jié)

§10.2文件類(lèi)型指針文件類(lèi)型指針在C語(yǔ)言中用一個(gè)指針變量指向一個(gè)文件,這個(gè)指針?lè)Q為文件指針。文件類(lèi)型FILE定義如下。

typedefstruct{shortlevel;//緩沖區(qū)滿(mǎn)或空的程度unsignedflags;//文件狀態(tài)標(biāo)志charfd;//文件描述符shortbsize;//緩沖區(qū)大小unsignedchar*buffer;//文件緩沖區(qū)的首地址unsignedchar*curp;//文件緩沖區(qū)的當(dāng)前讀寫(xiě)指針unsignedcharhold;//其他信息unsignedistemp;//暫時(shí)文件指示器shorttoken;//用于有效性檢查}FILE;

§10.2文件類(lèi)型指針文件類(lèi)型指針文件指針的定義形式為:FILE*<文件指針名>例如:FILE*p;這里p指針代表一個(gè)文件,對(duì)文件進(jìn)行任何操作之前必須先定義指向文件的指針。Tips:①FILE是C語(yǔ)言中保存文件有關(guān)信息的文件結(jié)構(gòu)體類(lèi)型,C的編譯系統(tǒng)中有其定義,在程序中可直接使用;②在對(duì)一個(gè)文件進(jìn)行處理時(shí),需首先定義一個(gè)FILE類(lèi)型的指針變量。第十章文件目錄§10.1文件的概念§10.2文件類(lèi)型指針§10.3文件操作§10.4小結(jié)

§10.3文件操作在C語(yǔ)言中,文件操作都由庫(kù)函數(shù)來(lái)完成,本節(jié)將介紹主要的文件操作函數(shù),包括文件的打開(kāi)與關(guān)閉、文件的讀寫(xiě)、文件的定位等。分甘共苦,同舟共濟(jì)

§10.3文件操作文件打開(kāi)文件指針名=fopen(文件名,文件打開(kāi)方式);其中,“文件指針名”是FILE類(lèi)型的指針變量?!拔募笔且蜷_(kāi)的文件的文件名,但若打開(kāi)的文件不在當(dāng)前目錄下,則需要帶上路徑,可以采用相對(duì)路徑,也可采用絕對(duì)路徑?!拔募蜷_(kāi)方式”指出文件的類(lèi)型和文件打開(kāi)的目的,即對(duì)文件要進(jìn)行的操作?!拔募焙汀拔募蜷_(kāi)方式”都是字符串。

例如:FILE*fp;fp=fopen("file.txt","r");文本文件(ASCII碼文件)二進(jìn)制文件使用方式含義使用方式含義"r"打開(kāi)文本文件進(jìn)行只讀"rb"打開(kāi)二進(jìn)制碼文件進(jìn)行只讀"w"建立新文本文件進(jìn)行只寫(xiě)"wb"建立新二進(jìn)制碼文件進(jìn)行只寫(xiě)"a"打開(kāi)文本文件進(jìn)行追加"ab"打開(kāi)二進(jìn)制碼文件進(jìn)行追加"r+"打開(kāi)文本文件進(jìn)行讀/寫(xiě)"rb+"打開(kāi)二進(jìn)制碼文件進(jìn)行讀/寫(xiě)"w+"建立新文本文件進(jìn)行讀/寫(xiě)"wb+"建立新二進(jìn)制碼文件進(jìn)行讀/寫(xiě)"a+"打開(kāi)文本文件進(jìn)行讀/寫(xiě)/追加"ab+"打開(kāi)二進(jìn)制碼文件進(jìn)行讀/寫(xiě)/追加表10.1文件打開(kāi)方式

§10.3文件操作文件關(guān)閉fclose(文件指針名);若關(guān)閉成功,該函數(shù)將返回整數(shù)0,否則返回EOF(即-1)表示關(guān)閉失敗。所以關(guān)閉文件操作也應(yīng)該使用條件語(yǔ)句進(jìn)行判斷,以關(guān)閉fp指向的文件為例給出這一過(guò)程的常用模式:if(fclose(fp)){printf("\nCannotclosethefile!\n");exit(0);}執(zhí)行關(guān)閉文件操作還有一個(gè)作用是將把緩沖區(qū)中的數(shù)據(jù)強(qiáng)制寫(xiě)入磁盤(pán),使文件指針與具體文件脫鉤。這時(shí)磁盤(pán)文件和文件指針仍然存在,只是指針不再指向原來(lái)的文件。因此如果不關(guān)閉文件,則留在緩沖區(qū)中的數(shù)據(jù)就會(huì)丟失。

§10.3文件操作文件讀寫(xiě)C語(yǔ)言中對(duì)文件的讀寫(xiě)一般按以下步驟進(jìn)行:(1)用fopen函數(shù)打開(kāi)文件;(2)對(duì)文件進(jìn)行讀、或者寫(xiě)操作;(3)用fclose函數(shù)關(guān)閉文件。C語(yǔ)言提供了如下多種讀寫(xiě)文件的函數(shù),在程序中使用這些函數(shù)時(shí)需要包含頭文件stdio.h。

①字符讀寫(xiě)函數(shù):fgetc()和fputc()。

②字符串讀寫(xiě)函數(shù):fgets()和fputs()。

③數(shù)據(jù)塊讀寫(xiě)函數(shù):fread()和fwrite()。

④格式化讀寫(xiě)函數(shù):fscanf()和fprintf()。

§10.3文件操作——(1)讀字符函數(shù)fgetc()調(diào)用fgetc()函數(shù)的形式為:字符變量=fgetc(文件指針);從文件指針?biāo)傅奈募凶x一個(gè)字符,如果讀取正常,將讀到的字節(jié)值賦給字符變量并將當(dāng)前讀指針向后移一個(gè)字節(jié)(即指向下一個(gè)讀出字符位置);如果讀到文件尾或出錯(cuò),則返回EOF(其值在頭文件stdio.h中被定義為-1)。

§10.3文件操作例10.1讀入文件a.txt,在屏幕上輸出其內(nèi)容。#include<stdio.h>#include<stdlib.h>intmain(){FILE*fp;charch;if((fp=fopen("d:\\example\\a.txt","r"))==NULL){printf("\nCannotopenfile,strikeanykeyexit!");exit(0);}ch=fgetc(fp);while(ch!=EOF){putchar(ch);ch=fgetc(fp);}fclose(fp);return0;}

§10.3文件操作——(2)寫(xiě)字符函數(shù)fputc()調(diào)用fputc()函數(shù)的一般形式為:fputc(字符數(shù)據(jù),文件指針);將字符數(shù)據(jù)輸出到文件指針?biāo)赶虻奈募腥?,同時(shí)將讀寫(xiě)位置指針向后移動(dòng)一個(gè)字節(jié)(即指向下一個(gè)寫(xiě)入位置)。如果輸出成功,則函數(shù)返回值就是輸出的字符數(shù)據(jù);否則,返回EOF。

§10.3文件操作例10.2利用字符讀寫(xiě)函數(shù)實(shí)現(xiàn)文件復(fù)制。#include<stdio.h>#include<stdlib.h>intmain(){FILE*fp1,*fp2;if(((fp1=fopen("c:\\f1.txt","r"))==NULL)||((fp2=fopen("d:\\f2.txt","w"))==NULL)){printf("OpenFail.\n");exit(0);}//復(fù)制源文件到目標(biāo)文件中

for(;(!feof(fp1));)fputc(fgetc(fp1),fp2);fclose(fp1);fclose(fp2);return0;}程序中用到了判斷文件是否結(jié)束的庫(kù)函數(shù)feof(),其函數(shù)的原型為:intfeof(文件指針);其功能是在執(zhí)行讀文件操作時(shí),如果遇到文件尾,則返回1(邏輯真值);否則,返回0(邏輯假值)。編程實(shí)現(xiàn)兩個(gè)文件的連接功能。

§10.3文件操作——(3)文件讀寫(xiě)位置指針讀寫(xiě)文件時(shí)有一個(gè)位置指針,用來(lái)指向文件內(nèi)部當(dāng)前讀寫(xiě)的字節(jié)。文件指針和文件內(nèi)部的讀寫(xiě)位置指針不一樣。文件指針指向整個(gè)文件,須在程序中定義說(shuō)明,只要不重新賦值,文件指針的值是不變的。文件內(nèi)部的讀寫(xiě)位置指針用來(lái)指示文件內(nèi)部當(dāng)前的讀寫(xiě)位置,每讀寫(xiě)一次,該指針均向后移動(dòng),不需要在程序中定義說(shuō)明它,而由系統(tǒng)自動(dòng)設(shè)置。Tips:①對(duì)文件讀寫(xiě)前,首先需用fopen打開(kāi)文件,讀寫(xiě)結(jié)束后,需用fclose關(guān)閉文件;②以字符為單位對(duì)文件進(jìn)行讀操作的函數(shù)及格式為:字符變量=fgetc(文件指針);③以字符為單位對(duì)文件進(jìn)行寫(xiě)操作的函數(shù)及格式為:fputc(字符數(shù)據(jù),文件指針);④判斷文件是否結(jié)束的庫(kù)函數(shù)及格式為:intfeof(文件指針);⑤文件讀寫(xiě)位置指針用來(lái)指向文件內(nèi)部當(dāng)前讀寫(xiě)的字節(jié),不需要在程序中定義說(shuō)明它,而由系統(tǒng)自動(dòng)設(shè)置。文件指針是指向整個(gè)文件,須在程序中定義說(shuō)明。

§10.3文件操作——(4)讀字符串函數(shù)fgets()調(diào)用fgets()函數(shù)的形式為:char*fgets(char*str,intnum,FILE*fp);從fp所指向的文件中讀取至多num-1個(gè)字符,并在其末尾加上字符串結(jié)束標(biāo)志'\0',把它們放入str指向的字符數(shù)組中。讀取字符直到遇見(jiàn)回車(chē)符或EOF(文件結(jié)束符)為止,或讀入了所限定的字符數(shù)。如果操作成功,返回讀取的字符串的指針;如果遇到文件末尾或出錯(cuò),則返回NULL。

(5)寫(xiě)字符串函數(shù)fputs()調(diào)用fputs()函數(shù)的形式為:intfputs(char*str,FILE*fp);將str指向的字符串寫(xiě)入fp所指向的文件中。如果操作成功,函數(shù)返回0值;如果失敗,則返回EOF(即-1)?!?/p>

§10.3文件操作例10.3fgets、fputs函數(shù)的應(yīng)用。#include<stdio.h>#include<string.h>#include<stdlib.h>intmain(){FILE*fp1,*fp2;charstr[128];if((fp1=fopen("test1.txt","r"))==NULL)//以只讀方式打開(kāi)文件1{printf("Cannotopenfile\n");exit(0);}if((fp2=fopen("test2.txt","w"))==NULL)//以只寫(xiě)方式打開(kāi)文件2{printf("Cannotopenfile\n");exit(0);}fgets(str,128,fp1);//從文件1讀入字符串

fputs(str,fp2);//把字符串寫(xiě)入文件2printf("%s",str);//在屏幕上顯示字符串

fclose(fp1);fclose(fp2); return0;}將一個(gè)文件的內(nèi)容加上行序號(hào)顯示在屏幕上,并復(fù)制到另一個(gè)文件中。從一個(gè)文本文件test1.txt中讀出一個(gè)字符串,再寫(xiě)入另一個(gè)文件test2.txt。

§10.3文件操作例10.4從鍵盤(pán)輸入字符串,并寫(xiě)入文本文件test.txt。。#include<stdio.h>#include<string.h>#include<stdlib.h>intmain(){FILE*fp;charstr[128];if((fp=fopen("test.txt","w"))==NULL)//以只寫(xiě)方式打開(kāi)文本文件

{printf("Cannotopenfile\n");exit(0);}while(strlen(gets(str))!=0)//若串長(zhǎng)度為0,則結(jié)束

{fputs(str,fp);//寫(xiě)入串

fputs("\n",fp);//寫(xiě)入回車(chē)符

}fclose(fp); return0;}

§10.3文件操作Tips:①以字符串為單位對(duì)文件進(jìn)行讀操作的函數(shù)及格式為:char*fgets(char*str,intnum,FILE*fp);②利用fgets函數(shù)對(duì)文件進(jìn)行讀操作時(shí),當(dāng)滿(mǎn)足以下條件之一時(shí)讀取結(jié)束:a.已經(jīng)讀取了n-1個(gè)字符;b.當(dāng)前讀到的字符為回車(chē)符;c.已讀到文件的末尾;③以字符串為單位對(duì)文件進(jìn)行寫(xiě)操作的函數(shù)及格式為:intfputs(char*str,FILE*fp);④利用fputs對(duì)文件進(jìn)行寫(xiě)操作時(shí),自動(dòng)舍去字符串后的'\0'。

§10.3文件操作————(6)數(shù)據(jù)塊讀函數(shù)fread()調(diào)用fread()函數(shù)的形式為:intfread(void*buf,intsize,intcount,FILE*fp);從fp所指向的文件中讀取count個(gè)數(shù)據(jù)項(xiàng),每個(gè)數(shù)據(jù)項(xiàng)為size個(gè)字節(jié),并把它們放到buf(緩沖區(qū))指向的字符數(shù)組中。若讀取成功,則返回讀取的項(xiàng)數(shù)即count值,若讀取失敗,則返回-1。(7)數(shù)據(jù)塊寫(xiě)函數(shù)fwrite()調(diào)用fwrite()函數(shù)的形式為:intfwrite(void*buf,intsize,intcount,FILE*fp);從buf(緩沖區(qū))指向的字符數(shù)組中,把count個(gè)數(shù)據(jù)項(xiàng)寫(xiě)到fp所指向的文件中,每個(gè)數(shù)據(jù)項(xiàng)為size個(gè)字節(jié),函數(shù)操作成功時(shí)返回寫(xiě)入文件中的數(shù)據(jù)項(xiàng)數(shù),若輸出失敗則返回-1。

§10.3文件操作例10.5fread、fwrite函數(shù)的應(yīng)用。從鍵盤(pán)輸入N個(gè)學(xué)生的記錄,包括姓名、學(xué)號(hào)、三門(mén)課程的成績(jī),把這些數(shù)據(jù)保存到文件d:\test.txt中,然后再?gòu)脑撐募凶x出數(shù)據(jù)顯示到屏幕上。

§10.3文件操作#include<stdio.h>#include<stdlib.h>#defineN10intmain(){FILE*fpinti;structstu//定義結(jié)構(gòu)體變量

{charname[15];//姓名

charnum[6];//學(xué)號(hào)

floatscore[3];//三門(mén)課程的成績(jī)

}student;if((fp=fopen("d:\\test.txt","wb"))==NULL){printf("Cannotopenfile\n");exit(0);}printf("Inputdata:\n");for(i=0;i<N;i++){scanf("%s%s%f%f%f",,student.num,&student.score[0],&student.score[1],&student.score[2]);//輸入一記錄

fwrite(&student,sizeof(student),1,fp);//成塊寫(xiě)入文件

}fclose(fp);if((fp=fopen("d:\\test.txt","rb"))==NULL)//以二進(jìn)制只讀方式打開(kāi)文件

{printf("Cannotopenfile\n");exit(0);}printf("Outputfromfile:\n");for(i=0;i<N;i++){fread(&student,sizeof(student),1,fp);//從文件fp中成塊讀

printf("%s%s%7.2f%7.2f%7.2f\n",,student.num,student.score[0],student.score[1],student.score[2]);//顯示在屏幕上

}fclose(fp);//關(guān)閉文件

return0;}從鍵盤(pán)輸入N個(gè)學(xué)生的姓名、學(xué)號(hào)、總分,把這些數(shù)據(jù)保存到文件kaosheng.txt中,然后再?gòu)脑撐募凶x出數(shù)據(jù)顯示到屏幕上。要求寫(xiě)入和讀出數(shù)據(jù)塊的操作以函數(shù)來(lái)實(shí)現(xiàn)。

§10.3文件操作————(8)對(duì)文件格式化讀函數(shù)fscanf()調(diào)用fscanf()函數(shù)的形式為:intfscanf(FILE*fp,char*format,inlist);從fp所指向的文件中讀取數(shù)據(jù)按format中規(guī)定的格式輸入到inlist地址表列中。其中,format是格式控制串,inlist是輸入地址列表。如果操作成功,函數(shù)返回值是讀取的數(shù)據(jù)項(xiàng)的個(gè)數(shù);如果操作出錯(cuò)或遇到文件尾,則返回EOF。例如:fscanf(fp,"%d%f",&i,&x);表示從fp中讀一個(gè)整數(shù)給i,讀一個(gè)浮點(diǎn)數(shù)給x。(9)對(duì)文件格式化寫(xiě)函數(shù)fprintf()調(diào)用fprintf()函數(shù)的形式為:intfprintf(FILE*fp,char*format,outlist);將outlist中數(shù)據(jù)按format格式寫(xiě)入到fp所指向的文件中。如果操作成功,函數(shù)返回值是寫(xiě)入到文件中的字節(jié)個(gè)數(shù);如果操作出錯(cuò),則返回EOF。例如:fprintf(fp,"%d,%6.2f",i,t);表示將i和t按%d,%6.2f格式寫(xiě)入到fp文件。

§10.3文件操作例10.6fscanf、fprintf函數(shù)的應(yīng)用。已知D盤(pán)上example文件夾下的ff.txt數(shù)據(jù)文件中保存了5個(gè)學(xué)生的數(shù)學(xué)考試數(shù)據(jù),包括學(xué)號(hào)、姓名和分?jǐn)?shù),文件內(nèi)容如下:201101王立文92201102陳志慧88201103胡東方75201104劉偉文65201105何晶晶72讀出文件的內(nèi)容并顯示在屏幕上。

§10.3文件操作#include<stdio.h>#include<stdlib.h>intmain(void){FILE*fp;//定義文件指針

longnum;charstname[20];intscore;if((fp=fopen("d:\\example\\ff.txt","r"))==NULL)//打開(kāi)文件

{printf("Fileopenerror\n");exit(0);}while(!feof(fp)){fscanf(fp,"%ld%s%d",&num,stname,&score);//fscanf()讀入數(shù)據(jù)

printf("%ld%s%d\n",num,stname,score);//輸出到屏幕

}if(fclose(fp)){printf("Cannotclosethefile!\n");exit(0);} return0;}將上述D盤(pán)上example文件夾下的ff.txt文件中的內(nèi)容讀出顯示在屏幕上的同時(shí),寫(xiě)入到文件tt.txt中。

§10.3文件操作文件讀寫(xiě)函數(shù)的選用原則從功能角度來(lái)說(shuō),fread()和fwrite()函數(shù)可以完成對(duì)文件任何數(shù)據(jù)的讀/寫(xiě)操作。但是為方便起見(jiàn),應(yīng)依以下原則選用文件讀寫(xiě)函數(shù):①讀/寫(xiě)1個(gè)字符(或字節(jié))數(shù)據(jù)時(shí),選用fgetc()和fputc()函數(shù),主要對(duì)文本文件進(jìn)行。②讀/寫(xiě)1個(gè)字符串時(shí),選用fgets()和fputs()函數(shù),只對(duì)文本文件進(jìn)行。③讀/寫(xiě)1個(gè)(或多個(gè))不含格式的數(shù)據(jù)時(shí),選用fread()和fwrite()函數(shù),主要對(duì)二進(jìn)制文件進(jìn)行。④讀/寫(xiě)1個(gè)(或多個(gè))含格式的數(shù)據(jù)時(shí),選用fscanf()和fprintf()函數(shù),只對(duì)文本文件進(jìn)行。

§10.3文件操作文件定位實(shí)現(xiàn)隨機(jī)讀寫(xiě)的關(guān)鍵是按要求移動(dòng)文件位置指針,這稱(chēng)為文件的定位。C語(yǔ)言提供的實(shí)現(xiàn)文件定位的函數(shù)主要有返回文件讀寫(xiě)指針的位置函數(shù)ftell()、將文件讀寫(xiě)指針位置置于文件頭的函數(shù)rewind()、改變文件讀寫(xiě)指針位置的函數(shù)fseek()等。

§10.3文件操作文件定位1.ftell()函數(shù)調(diào)用ftell()函數(shù)的形式為:longftell(FILE*fp);得到fp所指向文件的當(dāng)前讀寫(xiě)位置。該值是一個(gè)長(zhǎng)整型數(shù),用來(lái)得到文件位置指針離文件開(kāi)頭的偏移量的字節(jié)數(shù)。文件剛打開(kāi)時(shí),ftell()返回值是0。當(dāng)返回值是-1L時(shí)表示出錯(cuò),通常利用該返回值判斷ftell()函數(shù)調(diào)用是否出錯(cuò)。例如:pos=ftell(fp);if(pos==-1L)printf("ERROR\n");2.rewind()函數(shù)調(diào)用rewind()函數(shù)的形式為:intrewind(FILE*fp);將fp所指文件的位置指針移到文件的開(kāi)頭,如果移動(dòng)成功,返回0;否則,返回一個(gè)非0值。

§10.3文件操作例10.7remind的應(yīng)用。在屏幕上顯示a.txt文件的內(nèi)容,并將a.txt文件內(nèi)容復(fù)制到b.txt文件中。#include<stdio.h>#include<stdlib.h>intmain(){FILE*fp1,*fp2;if((fp1=fopen("a.txt","r"))==NULL)//以讀方式打開(kāi)文本文件

{printf("Cannotopenfile.\n");exit(0);}if((fp2=fopen("b.txt","w"))==NULL)//以寫(xiě)方式打開(kāi)文本文件

{printf("Cannotopenfile.\n");exit(0);}while(!feof(fp1))//在屏幕上顯示文件a.txt的內(nèi)容

putchar(fgetc(fp1));rewind(fp1);//使a.txt的位置指針重返回文件頭

while(!feof(fp1))fputc(fgetc(fp1),fp2);//把a(bǔ).txt文件的內(nèi)容復(fù)制到b.txt中

fclose(fp1);fclose(fp2); return0;}不借助rewind()函數(shù)如何實(shí)現(xiàn)本題的讀顯示并復(fù)制問(wèn)題。

§10.3文件操作文件定位3.fseek()函數(shù)調(diào)用rewind()函數(shù)的形式為:fseek(FILE*fp,longoffset,intorigin);把fp所指文件的位置指針以origin為起點(diǎn)移動(dòng)offset個(gè)字節(jié),其中origin指出的位置如表10.2所示。offset是長(zhǎng)整型,需要在整型數(shù)據(jù)后面加字符“L”,該值可正可負(fù),正

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論