processing筆記1——表格捡遍、文本、圖片讀存

1竹握、表格讀寫

表格格式:

目前此方法支持“.csv”文件画株。其余文件格式應(yīng)該是不支持的。不過幸好啦辐,學(xué)姐們給的數(shù)據(jù)文件格式也是csv文件谓传。

表格讀取相關(guān)代碼語法:

涉及的數(shù)據(jù)類型(類):
Table table;                                  //表格類
TableRow row;                              //表格行類
讀取表格文件:
table=loadTable("******.csv","header");    //第一參:文件路徑
                                         //第二參:省略為無表頭,header為有表頭
獲取一些表格信息:
int countNum=table.getRowCount();            //總行數(shù)芹关。列數(shù)是getColumnCount
讀取指定行:
row=table.getRow(INT);            //要第幾行就寫幾良拼。表頭不算行數(shù)。
//行數(shù)從第0行開始算起
//如果需要獲得表頭內(nèi)容充边,讀取文件的時候不能用header讀進(jìn)來
獲得指定單元格內(nèi)容:

先讀取指定行,再讀取該行的指定列:

row=table.getRow(INT);
Object xxx=row.getObject(INT/STRING);        //比如:
int x=row.getInt(0);
float y=row.getFloat(1);
String name=row.getString("Name");
//在提供的數(shù)據(jù)類型里讀取常侦。參數(shù)是int或者字符串String類型
//int就是列索引浇冰,從第0列算起
//String要求必須是用header讀進(jìn)來的有表頭的表格
//String內(nèi)容即為該列的列名。重復(fù)列名估計只取第一個

表格新建聋亡、寫入肘习、保存相關(guān)代碼語法:

表格保存:
saveTable(table,"*****.csv");    //第一參:表格
                 //第二參:保存路徑漂佩。已存在文件則會覆蓋內(nèi)容
表格修改:

步驟大致:讀表格——設(shè)置單元格的值——保存覆蓋/另存

//讀表格
//讀某行
row.setObject(INT/STRING,Object);      //設(shè)置值
          //第一參:列索引/列名(有表頭)
          //第二參:要設(shè)置的數(shù)據(jù)類型的變量
//比如:
row.setFloat("Start",13.66f);

saveTable(table,"*****.csv");        //覆蓋就和原路徑一樣罪塔,另存就寫個新的路徑
新建表格:

步驟大致:新建表格對象——設(shè)置列——增加行——設(shè)置單元格的值——保存

      Table targetTable;
      targetTable=new Table();
      targetTable.addColumn("Start",Table.FLOAT);
      targetTable.addColumn("R",Table.FLOAT);
      targetTable.addColumn("G",Table.FLOAT);
      targetTable.addColumn("B",Table.FLOAT);
      targetTable.addColumn("A",Table.FLOAT);
      //給了列名和數(shù)據(jù)類型。具體參數(shù)是否可省看文檔
      TableRow targetRow=targetTable.addRow();
      //新增一行瘩缆〉柩粒可以一直增着绊,然后重新獲取目標(biāo)行在設(shè)置單元格內(nèi)容
      targetRow.setFloat("Start",start);
      targetRow.setFloat("R",rawEndRow.getFloat("R"));
      targetRow.setFloat("G",rawEndRow.getFloat("G"));
      targetRow.setFloat("B",rawEndRow.getFloat("B"));
      targetRow.setFloat("A",rawEndRow.getFloat("A"));
      //設(shè)置值
      saveTable(targetTable,"***********.csv");
      //保存

2归露、文本讀取

TXT文本目前只用到讀取斤儿,格式要求:

TXT文本文檔,含中文的話雇毫,則要求是U8編碼,否則processing讀取到的是亂碼中文枚粘。
U8編碼可以在TXT文本進(jìn)行另存為時修改。

代碼語法:

按行逐行讀取的一整套:

BufferedReader reader;                        //讀取器
reader=createReader("*******.txt");        //參數(shù)是:文本文檔路徑的String
try{
      String line="";
      line=reader.readLine();                //line即讀取的行
      while(line!=null){                      //不為空就繼續(xù)讀
            /****
            操作
            ***/
            line=reader.readLine();        //讀下一行
      }
      reader.close();
}
catch(IOException e){
      println(e);
}

暫不清楚文本中有空行時會發(fā)生什么馍迄∨嗜Γ可能會停下。

3赘来、圖片讀存

格式:

應(yīng)該是各種常見的圖片格式都可以的凯傲。

代碼語法:

讀圖片像素RGB:
PImage img;
img=loadImage("******.png","png");   //第一個參數(shù)路徑,第二個參數(shù)可以省
img.loadPixels();          //文檔要求寫幌缝,貌似省略也沒問題诫欠。安全起見還是寫了
color pix=img.pixels[j*128+i];          //一維數(shù)組,應(yīng)該是橫向排列的
int b=pix&0xFF;
int g=(pix>>8)&0xFF;
int r=(pix>>16)&0xFF;          //運(yùn)用了位運(yùn)算

color類型實(shí)質(zhì)是一個int荒叼。16進(jìn)制下正好是常見的顏色編碼,比如C392B4這樣子贴硫。位運(yùn)算后與16進(jìn)制下的255(就是FF,二進(jìn)制8位全1)進(jìn)行與運(yùn)算间护,截得最低的8位。按順序汁尺,得到的結(jié)果由高到低分別是R多律,G,B辽装。

存畫布:

將當(dāng)前畫布內(nèi)容(當(dāng)前幀)存成圖片。

save("********.png");              //其他常見格式j(luò)pg拾积、tif也可以
存序列幀:

將當(dāng)前幀存成固定命名格式的圖片丰涉。

saveFrame("***-######.png");          //具體命名規(guī)則文檔里有
                         //井號會被替換成幀數(shù)(frameCount),高位補(bǔ)0

一般用法是將它寫在draw()里肛度,保存成序列幀投慈,整理到一個文件夾里。
然后用processing的“工具——Movie Maker”伪煤,選擇這個文件夾,設(shè)置幀數(shù),導(dǎo)出成視頻文件蟀给。
可以用一個index去除以間隔數(shù)取余,實(shí)現(xiàn)抽幀保存跋理。

直接保存圖片文件:

修改圖片文件的像素值之后,直接保存圖片變量為文件肚邢。文檔里肯定有相關(guān)方法,但是我暫時沒用到骡湖。所以不忙寫了。用到再補(bǔ)谆焊。

注意事項(xiàng):

保存圖片時要等上一會兒浦夷,保存需要一定時間。建議加個println去表示保存完畢劈狐。保存中途中斷的話,圖片會只存了一半莲兢,或者圖片文件受損打不開辫继。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市遣耍,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌舵变,老刑警劉巖瘦穆,帶你破解...
    沈念sama閱讀 210,978評論 6 490
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異绵咱,居然都是意外死亡熙兔,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 89,954評論 2 384
  • 文/潘曉璐 我一進(jìn)店門麸锉,熙熙樓的掌柜王于貴愁眉苦臉地迎上來舆声,“玉大人柳爽,你說我怎么就攤上這事碱屁。” “怎么了争拐?”我有些...
    開封第一講書人閱讀 156,623評論 0 345
  • 文/不壞的土叔 我叫張陵晦雨,是天一觀的道長。 經(jīng)常有香客問我闹瞧,道長,這世上最難降的妖魔是什么万牺? 我笑而不...
    開封第一講書人閱讀 56,324評論 1 282
  • 正文 為了忘掉前任洽腺,我火速辦了婚禮,結(jié)果婚禮上核无,老公的妹妹穿的比我還像新娘。我一直安慰自己团南,他們只是感情好炼彪,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,390評論 5 384
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著拷橘,像睡著了一般喜爷。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上贞奋,一...
    開封第一講書人閱讀 49,741評論 1 289
  • 那天轿塔,我揣著相機(jī)與錄音,去河邊找鬼揍障。 笑死,一個胖子當(dāng)著我的面吹牛毒嫡,可吹牛的內(nèi)容都是我干的幻梯。 我是一名探鬼主播,決...
    沈念sama閱讀 38,892評論 3 405
  • 文/蒼蘭香墨 我猛地睜開眼咬摇,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了肛鹏?” 一聲冷哼從身側(cè)響起恩沛,我...
    開封第一講書人閱讀 37,655評論 0 266
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎芒珠,沒想到半個月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體妓局,經(jīng)...
    沈念sama閱讀 44,104評論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡好爬,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,451評論 2 325
  • 正文 我和宋清朗相戀三年甥啄,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片蜈漓。...
    茶點(diǎn)故事閱讀 38,569評論 1 340
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖享完,靈堂內(nèi)的尸體忽然破棺而出有额,到底是詐尸還是另有隱情彼绷,我是刑警寧澤茴迁,帶...
    沈念sama閱讀 34,254評論 4 328
  • 正文 年R本政府宣布,位于F島的核電站堕义,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏洒擦。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,834評論 3 312
  • 文/蒙蒙 一秘遏、第九天 我趴在偏房一處隱蔽的房頂上張望嘉竟。 院中可真熱鬧,春花似錦舍扰、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,725評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至茬底,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間阱表,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 31,950評論 1 264
  • 我被黑心中介騙來泰國打工涉馁, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人烤送。 一個月前我還...
    沈念sama閱讀 46,260評論 2 360
  • 正文 我出身青樓糠悯,卻偏偏與公主長得像牢裳,于是被迫代替她去往敵國和親叶沛。 傳聞我的和親對象是個殘疾皇子忘朝,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,446評論 2 348

推薦閱讀更多精彩內(nèi)容