第一篇:C 文件的讀取和寫入
C++文件的讀取和寫入.txt 2010-04-08 11:12筆記:C++文件的讀取和寫入
#include
using namespace std;
int main(){ char buffer[256];ifstream myfile(“c:a.txt”);ofstream outfile(“c:b.txt”);
if(!myfile){ cout << “Unable to open myfile”;exit(1);// terminate with error
} if(!outfile){ cout << “Unable to open otfile”;exit(1);// terminate with error } int a,b;int i=0,j=0;int data[6][2];while(!myfile.eof()){ myfile.getline(buffer,10);sscanf(buffer,“%d %d”,&a,&b);cout< outfile.close();return 0;} 無論讀寫都要包含 讀:從外部文件中將數據讀到程序中來處理 對于程序來說,是從外部讀入數據,因此定義輸入流,即定義輸入流對象:ifsteam infile,infile就是輸入流對象。 這個對象當中存放即將從文件讀入的數據流。假設有名字為myfile.txt的文件,存有兩行數字數據,具體方法: int a,b;ifstream infile;infile.open(“myfile.txt”);//注意文件的路徑 infile>>a>>b;//兩行數據可以連續讀出到變量里 infile.close() 如果是個很大的多行存儲的文本型文件可以這么讀: char buf[1024];//臨時保存讀取出來的文件內容 string message;ifstream infile;infile.open(“myfile.js”);if(infile.is_open())//文件打開成功,說明曾經寫入過東西 { while(infile.good()&&!infile.eof()){ memset(buf,0,1024);infile.getline(buf,1204);message = buf;......//這里可能對message做一些操作 cout< 寫:將程序中處理后的數據寫到文件當中 對程序來說是將數據寫出去,即數據離開程序,因此定義輸出流對象ofstream outfile,outfile就是輸出流對象,這個對象用來存放將要寫到文件當中的數據。具體做法: ofstream outfile;outfile.open(“myfile.bat”);//myfile.bat是存放數據的文件名 if(outfile.is_open()){ outfile< c++對文件的讀寫操作的例子 /*/從鍵盤讀入一行字符,把其中的字母依次放在磁盤文件fa2.dat中,再把它從磁盤文件讀入程序,將其中的小寫字母改成大寫字母,再存入磁盤fa3.dat中*/ #i nclude for(int i=0;c[i]!=0;i++)//對字符一個一個的處理,直到遇到'/0'為止 if(c[i]>=65&&c[i]<=90||c[i]>=97&&c[i]<=122){//保證輸入的字符是字符 outfile.put(c[i]);//將字母字符存入磁盤文件 cout< 演講稿 尊敬的老師們,同學們下午好: 我是來自10級經濟學(2)班的學習委,我叫張盼盼,很榮幸有這次機會和大家一起交流擔任學習委員這一職務的經驗。 轉眼間大學生活已經過了一年多,在這一年多的時間里,我一直擔任著學習委員這一職務。回望這一年多,自己走過的路,留下的或深或淺的足跡,不僅充滿了歡愉,也充滿了淡淡的苦澀。一年多的工作,讓我學到了很多很多,下面將自己的工作經驗和大家一起分享。 學習委員是班上的一個重要職位,在我當初當上它的時候,我就在想一定不要辜負老師及同學們我的信任和支持,一定要把工作做好。要認真負責,態度踏實,要有一定的組織,領導,執行能力,并且做事情要公平,公正,公開,積極落實學校學院的具體工作。作為一名合格的學習委員,要收集學生對老師的意見和老師的教學動態。在很多情況下,老師無法和那么多學生直接打交道,很多老師也無暇顧及那么多的學生,特別是大家剛進入大學,很多人一時還不適應老師的教學模式。學習委員是老師與學生之間溝通的一個橋梁,學習委員要及時地向老師提出同學們的建議和疑問,熟悉老師對學生的基本要求。再次,學習委員在學習上要做好模范帶頭作用,要有優異的成績,當同學們向我提出問題時,基本上給同學一個正確的回復。 總之,在一學年的工作之中,我懂得如何落實各項工作,如何和班委有效地分工合作,如何和同學溝通交流并且提高大家的學習積極性。當然,我的工作還存在著很多不足之處。比日:有的時候得不到同學們的響應,同學們不積極主動支持我的工作;在收集同學們對自己工作意見方面做得不夠,有些事情做錯了,沒有周圍同學的提醒,自己也沒有發覺等等。最嚴重的一次是,我沒有把英語四六級報名的時間,地點通知到位,導致我們班有4名同學錯過報名的時間。這次事使我懂得了做事要腳踏實地,不能馬虎。 在這次的交流會中,我希望大家可以從中吸取一些好的經驗,帶動本班級的學習風氣,同時也相信大家在大學畢業后找到好的工作。謝謝大家! 時間:2015/10/26 作者:張貴勇 所在學校:鄭州大學 實習公司:北方大賢風電科技 Matlab讀取文件函數總結 1.load讀取方式 a.基本說明: 只能讀取數值數據,不能讀取含文本的數據;日期按數值讀取。b.調用方式: a=load(filename);c. 有無分隔符限制: 無需輸入分隔符,可自動識別空格、逗號、分號、制表符。d. 能否自定義讀取范圍: 不能。 e. 適用文件類型: txt、csv。 2.importdata讀取方式 a.基本說明: 可讀取數值數據和含文本的數據,但是要求文本在數據的第一行或第一列。返回值分為數值部分(data)和文本部分(textdata)b.調用方式: a=importdata(filename,delm,nheaderlines);filename:文件名(如果文件在其他路徑下,文件名前需加所在路徑。)delm:分隔符 nheaderlines:從第nheaderlines+1行開始讀取數值數據。c.有無分隔符限制: 多列數據時需輸入分隔符。若不輸入分隔符,整行會被作為字符串放入一列。d.能否自定義讀取范圍: 可從某一行開始讀取數值數據。若使用importdata按鈕,則可自定義讀取范圍和設置數據類型。f. 適用文件類型 txt、xls、xlsx、csv。 3.textscan讀取方式 a.基本說明: 可對列按照自定義格式讀取數據,必須輸入每列的讀取格式,可跳過某個列或幾列。按數值讀取時,缺少值以NaN填補;按字符讀取時,缺少值以空格填補。返回值按列放入元胞數組。b.調用方式: c = textscan(fid,'format',n,'param',value)fid:文件指針。使用textscan函數時需先使用fopen函數打開數據文件,返回給fid文件若不再使用,則需用fclose(fid)關閉文件。‘format’:定義每列的讀取格式。例如%s表示按字符串讀取、%d表示按整數讀取、%D按日期讀取、%*表示跳過該列。level%u8表示將level1讀取成1,去掉level。‘param’,value:這兩個參數成對出現。例如’Delimiter’,’s’表示按分隔符為’,’進行讀取。c.有無分隔符限制 可自定義分隔符,不是必須的。d.能否自定義讀取范圍: 時間:2015/10/26 作者:張貴勇 所在學校:鄭州大學 實習公司:北方大賢風電科技 可跳過某列或某幾列數據,但要保證跳過的列是可讀的,否則讀取也會出錯。e.適用文件類型 txt、csv 4.textread讀取方式 a.基本說明: 適用于格式統一的txt文件的一次性大批量讀取。textread讀取某個文件后,下次再用,textread讀取這個文件時,還是會從文件頭開始讀取。b.調用方式: [A,B,C,...] = textread(filename,format)[A,B,C,...] = textread(filename,format,N,’headerlines’,M)Filename:文件名; Format:就是要讀取的格式; A,B,C…:從文件中讀取到的數據。中括號里面變量的個數必須和format中定義的個數相同。 N:表示讀取的次數,每次讀取一行。 Headerlines:表示從第M+1行開始讀入。 5.dlmread讀取方式 a. 基本說明: 只能讀取數值數據。如文件中含有文本,需使用range參數跳過。返回值為矩陣。b. 調用方式: result = dlmread(filename,delimiter,range);filename:文件名。delimiter:分隔符。 range:文件讀取范圍,格式為[R1 C1 R2 C2]。c. 有無分隔符限制: 可自定義分隔符,不是必須的。d. 能否自定義讀取范圍: 通過設置range,選擇讀取范圍。e. 適用文件類型 txt、csv。 6.xlsread讀取方式 a. 基本說明: 讀取xls文件,可讀取含文本的數據,僅能返回數值部分。 b. 調用方式: [num,txt,raw]=xlsread(file,sheet,range); file:需要讀取的文件。sheet:需要讀取的表單。 range:讀取范圍,格式為’A1:C4’。num:返回的數值數據。txt:返回的文本數據。 raw:返回未處理的數據。 c. 有無分隔符限制 無需輸入分隔符。 d. 能否自定義讀取范圍: 時間:2015/10/26 作者:張貴勇 所在學校:鄭州大學 實習公司:北方大賢風電科技 由sheet和range定義讀取范圍。e. 文件適用范圍 xls、xlsx。 7.csvread讀取方式 a. 基本說明: 只能讀取逗號分隔的數值數據。如文件中含有文本,需使用range參數跳過。b.調用方式: m = csvread('filename',r,c,rng); filename:文件名字。r,c:開始讀取的位置 rng:讀取范圍,格式為[R1 C1 R2 C2] c.有無分隔符限制: 文件必須以逗號分隔。d. 能否自定義讀取范圍: 可由r,c ,rng定義讀取范圍。e. 文件適用范圍 txt、csv。 8.fread讀取方式 該函數讀取文件返回的是二進制矩陣。 Matlab寫文件函數總結 1.xlswrite讀取方式 a.基本說明: 用matlab處理數據之后,需要將其保存到EXCEL內,而這必須用到xlswrite函數。 b.調用方式 A=xlswrite(filename, M);將矩陣M的數據寫入名為filename的Excel文件中。B=xlswrite(filename, M, sheet);將矩陣M的數據寫入文件名為filename中的指定的sheet中。 C=xlswrite(filename, M, range);將矩陣M中的數據寫入文件名為filename的Excel文件中,且由range制定存儲的區域,例如'C1:C2'.D=xlswrite(filename, M, sheet, range) status = xlswrite(filename,...);返回完成狀態值。如果寫入成功,則status為1;反之寫入失敗,則status為0.2.dlmwrite讀取方式 a.基本說明: 將矩陣寫入ASCII分隔的文件。dlmwrite函數不接受輸CELLM要導出一個單元格數組中只包含數字數據,使用cell2mat矩陣轉換為數字的單元格,然后再調用dlmwrite數組。 b.調用方式 時間:2015/10/26 作者:張貴勇 所在學校:鄭州大學 實習公司:北方大賢風電科技 1)dlmwrite(filename, M)使用默認的分隔符(')將矩陣M寫入ASCII格式的文件中。在目標文件filname中,數據是從第一行的第一列開始寫的。輸入的filename是使用單引號括起來的字符串。 2)dlmwrite(filename, M, 'D')將矩陣M寫入一個ASCII格式的文件中,使用分隔符D來分割矩陣的元素。在目標文件filname中,數據是從第一行的第一列開始寫的。逗號'是默認的分隔符,使用t來產生制表符分割的文件。 3)dlmwrite(filename, M, 'D', R, C)將矩陣M寫入一個ASCII格式的文件中,使用分隔符D來分割矩陣的元素。在目標文件filname中,數據是從第R行的第C列開始寫的,R和C從0開始,因此R=0,C=0指定了文件中的第一個數值,即左上角的位置。 4)dlmwrite(filename, M, '-append')matabc 將矩陣數據追加到文件的末尾。如果你不指定''-append',dlmwrite覆蓋文件中的任何現有數據。 5)dlmwrite(filename, M, '-append', attribute-value list) 接受一個屬性值對列表。用戶可以將'-append'標志放在屬性-數值對之間,但不能放在屬性和它的值的中間。 浙江省重大社會活動氣象保障服務實施辦法(試行) 2004年7月8日 第一條 為規范我省重大社會活動氣象保障服務工作,加強重大社會活動氣象保障服務管理,特提出本實施辦法。 第二條 重大社會活動,是指各級黨委、政府領導部門組織的重大政治、社會、經濟活動,重要會議以及重要軍事活動等。 第三條 各市、縣(區)氣象局應根據本地重大社會活動氣象服務的實際情況,制定本地區的重大社會活動氣象保障服務方案。省局決策服務中心制訂省級重大社會活動氣象保障服務工作方案。 第四條 省委、省政府在杭州組織的重大社會活動氣象保障服務由省局決策服務中心負責;省委、省政府在杭州以外組織的重大社會活動氣象保障服務由活動所在地氣象局負責,省局決策服務中心配合;各市、縣(區)黨委、政府在當地組織的重大社會活動氣象保障服務由所在地市、縣(區)氣象局負責;各級地方黨委、政府跨區域組織的重大社會活動氣象保障服務,由活動舉辦地氣象局協助活動舉辦方所轄地氣象局開展。 第五條 重大社會活動期間各有關氣象部門要相互配合,協同做好重大社會活動氣象保障服務工作,上級氣象業務部門根據下級氣象部門的要求,做好重大社會活動氣象保障服務的天氣預報會商和業務指導;下級氣象部門根據上級氣象業務部門的要求,及時提供各類監測、預報信息。 第六條 重大社會活動氣象保障服務單位要主動與活動舉辦部門聯系,及時了解對氣象服務的需求,有針對性地及時提供重大社會活動期間天氣氣候特點、前期天氣概況、未來1—3天的逐日和逐時段天氣預報、未來天氣展望等專題氣象服務。 第七條 省局決策服務中心是省級重大社會活動氣象保障服務的主要責任單位,省氣象臺、省氣候中心、省氣象信息中心、杭州市氣象局要按照省局決策服務中心的工作安排和要求,做好天氣氣候的監測、預測、分析、評估和各項氣象服務工作。 第八條 各級氣象部門要高度重視重大社會活動的氣象保障服務工作,成立重大社會活動氣象保障服務領導小組,各有關部門和單位要緊密配合,分工協作;各級業務管理部門要做好相關工作的組織協調和督促檢查;各級行政管理部門要負責相關信息的對外宣傳、報道和行政、后勤服務保障工作;各有關業務單位要根據本單位重大社會活動氣象保障服務工作方案落實任務和責任。 第九條 重大社會活動結束后,負責單位要在半個月內將重大社會活動氣象保障服務總結報上級業務主管部門。 #!/usr/bin/perl use strict; use warnings; use Spreadsheet::ParseExcel;use XML::Writer;use utf8;binmode(STDIN, ':encoding(utf8)');binmode(STDOUT, ':encoding(utf8)');binmode(STDERR, ':encoding(utf8)');#接收參數--文件名 my $file = $ARGV[0];my $book = Spreadsheet::ParseExcel::Workbook->Parse($file);my @sheets = @{ $book->{Worksheet} }; #將文件內容放入數組ary my @ary=(); foreach my $sheet(@sheets){ my($minRow, $maxRow)= $sheet->row_range(); my($minCol, $maxCol)= $sheet->col_range(); foreach my $row($minRow..$maxRow){ foreach my $col($minCol..$maxCol){ my $cell = $sheet->get_cell($row, $col); next unless $cell; $ary[$row][$col] = $cell->value; } } } #開始打印XML元素 my $writer;$writer=new XML::Writer(DATA_MODE=>1,DATA_INDENT=>2);$writer->xmlDecl('UTF-8','yes');$writer->startTag('aaaa');$writer->startTag('webs');#取當前服務器時間,防止ID號重復 my($sec,$min,$hour,$day,$mon,$year,$weekday,$yeardate,$savinglightday)=(localtime(time));my $date=$year.++$mon.$day;#取出數組元素個數 my $max_row=@ary-1;my $web_id='news';foreach my $new_row(0..$max_row){ my $web_name=“”; if(!$ary[$new_row][3]){ $writer->startTag('web','id'=>“$new_row$web_id$date”,' url'=>“$ary[$new_row][2]”,' time_interval'=>“500”); $writer->startTag('trans'); $writer->startTag('tran','id'=>“source”); $writer->characters($web_name); $writer->endTag('tran'); $writer->endTag('trans'); $writer->startTag('urls'); $writer->startTag('url','id'=>“com.aaaa.bigdata.news_child_url”); $writer->endTag('url'); $writer->endTag('urls'); $writer->endTag('web'); } else { my $num=$ary[$new_row][5]+1; $writer->startTag('web','id'=>“$new_row$web_id$date”,' url'=>“$ary[$new_row][2]”,' time_interval'=>“500”); $writer->startTag('trans'); $writer->startTag('tran','id'=>“source”); $writer->characters($web_name); $writer->endTag('tran'); $writer->endTag('trans'); $writer->startTag('urls'); $writer->startTag('url','id'=>“com.aaaa.bigdata.news_child_url”); $writer->endTag('url'); $writer->endTag('urls'); $writer->startTag('events'); $writer->startTag('event','id'=>“url”,'url'=>“$ary[$new_row][3]”,'min'=>“$ary[$new_row][4]”,'max'=>“$num”); $writer->endTag('event'); $writer->endTag('events'); $writer->endTag('web'); } } $writer->startTag('web','id'=>“aaaa1”);$writer->startTag('properties','db_ip'=>“192.168.1.11”,'db_name'=>“sssss”,'db_user'=>“root”,'db_passwd'=>“123456”,'db_table'=>'test','parser'=>“FALSE”);$writer->startTag('property','id'=>“CHECK_title”);$writer->endTag('property');$writer->startTag('property','id'=>“content”);$writer->endTag('property');$writer->startTag('property','id'=>“publish_time”);$writer->endTag('property');$writer->startTag('property','id'=>“news_url”);$writer->endTag('property');$writer->startTag('property','id'=>“crawl_datetime”);zlg_time($writer);$writer->endTag('property');$writer->endTag('properties');$writer->endTag('web');$writer->endTag('webs');$writer->endTag('aaaa');$writer->end; sub zlg_time { my $time='time.strftime(“%Y-%m-%d %H:%M:%S”, time.localtime())'; my $zlg_data=“ return $timen]]>”; $writer->characters($zlg_data);} exit(0); 另加一個腳本 接收參數1輸出的XML文件名、參數2輸入的excel文件名 #!/bin/bash dest_sa=$1 cs=$2 perl /home/url/xls.pl $cs >> $dest_sa sed-i 's//>/g' $dest_sa 入黨申請書書寫及要求 1、申請人填寫入黨志愿書要嚴肅、認真、忠實。填寫前,黨支部負責人或入黨介紹人應將表內項目向申請人解釋清楚。填寫前請認真閱讀本說明。 2、填寫入黨志愿書須使用鋼筆、簽字筆或毛筆,并使用黑色或黑色墨水。字跡要清晰、工整。表內的年、月、日一律用公歷和阿拉伯數字。表內欄目沒有內容填寫時,應注明“無”。個別欄目填寫不下時,可加附頁。 3、在封面申請人姓名的下面寫上專業班級和學號,以便歸檔。以下頁碼和欄目參照中共中央組織部2004年制的《入黨志愿書》格式。 P1:姓名、民族、出生年月、籍貫、居民身份證號碼:要與在公安戶籍管理部門正式登記注冊、人事檔案中正式記載的相一致;籍貫:必須填寫省、市、縣(區);(出生地省、市即可)出生地:指個人出生地點;(出生地省、市)學歷:一般填“高中畢業”,或本科(大專)×年級;(寫“課肄業”學位或職稱:在校學生一般填“無”;單位、職務或職業:填寫專業班級、擔任的職務;(寫學生現居住地:填寫你現在的家庭詳細地址(能通郵) 入黨志愿: 入黨志愿的基本寫法入黨志愿是入黨志愿書的一項重要內容,要根據自己的思想認識及其演變過程,實事求是地把自己對黨的認識、態度、入黨動機、優缺點及入黨后的決心等寫清楚。入黨志愿的主要內容包括以下幾個方面: 1.對入黨的態度。一般第一段要明確寫出自己對入黨的態度,即“我志愿加入中國共產黨”。 2.對黨的認識。這部分主要包括:如何認識黨的綱領和章程;如何認識黨史,尤其是親身經歷過的重大歷史事件;如何認識黨的領導和現行的路線、方針、政策。 3.入黨動機、目的。一般講,一個人最初的人黨動機、目的不是單一的,而是各種因素的綜合,往往有個從不端正到端正的過程。但是最終的、也是唯一正確的入黨動機只有一個,那就是實現共產主義的社會制度,全心全意為人民服務。因此應對每一因素進行分析,寫出達到最終正確入黨動機的思想演變過程,必要時還要有一定的理論論述。 4.自己的優缺點。要一分為二地看待自己的優缺點,并逐一作出深入的分析,要有發揚優點、克服缺點的決心和措施。 5.入黨的決心。填寫入黨志愿書只是申請人黨的同志入黨必須履行的手續之一,即使在組織上入了黨,思想上是否入黨還得看入黨后的言行。因此,在入黨志愿書中還要表明自己有不被接受的思想準備、進一步努力的打算或者入黨后的態度或決心等。 [寫入黨志愿應注意的問題] 1.在發展黨員常用文書中,入黨志愿書是唯一的黨組織印發、申請入黨人填寫的材料。入黨志愿有規定的篇幅(4頁),不能象其他材料可以不受字數限制地填寫。為此,首先要注意字數。 2.入黨志愿要在“入黨申請書”、“思想匯報”、“自傳”等基礎上進一步加工、提煉,字斟句酌,把自己最想向黨組織表達的思想寫出來。 3.入黨志愿要寫的鄭重、莊嚴、真誠 P4:本人經歷:從小學開始填,時間要銜接。 P5:何時何地加入中國共產主義青年團:填寫入團的時間、地點;何時何地何原因受過何種獎勵:按時間、地點、獲獎項目的順序填寫,一般從高中階段開始填寫,如獲獎項目多,就填寫主要的;其他欄目也要如實填寫,沒有內容填寫的,應注明“無”。 P6:家庭成員情況:配偶:未婚的不填;其他成員:填寫父母兄弟姐妹的情況,如果父母有去世的,也要填寫,并在后面說明什么時間因什么原因已去世;主要社會關系情況:填寫與自己成長關系比較密切的親戚、朋友。 P8:入黨介紹人意見:要有2名有表決權的正式黨員作為入黨介紹人。入黨介紹人要對申請入黨人的入黨動機、思想品質、經歷、工作表現等方面進行全面的了解,向申請人說明黨的綱領、章程、黨員的條件、義務和權利,并作出意見和向黨組織匯報。 本人簽名或蓋章:申請入黨人必須自己簽名和寫上填表時間。 入黨申請書封面模版 入黨申請書 姓名: 學號: 系別: 年級: 專業: 日期:第二篇:Matlab文件讀取和寫函數總結
第三篇:浙江省重.hdf5文件讀取程序
第四篇:perl讀取EXCEL文件輸出到XML
第五篇:如何寫入到申請書和入黨申請書格式