1. 程式人生 > >csv檔案讀寫操作

csv檔案讀寫操作

函式:

PHP有自帶的分析.csv函式:fgetcsv

array fgetcsv ( int $handle [, int $length [, string $delimiter [, string $enclosure]]] )
handle 一個由 fopen()、popen() 或 fsockopen() 產生的有效檔案指標。
length (可選)必須大於 CVS 檔案內最長的一行。在 PHP 5 中該引數是可選的。如果忽略(在 PHP 5.0.4 以後的版本中設為 0)該引數的話,那麼長度就沒有限制,不過可能會影響執行效率。
delimiter (可選)設定欄位分界符(只允許一個字元),預設值為逗號。
enclosure (可選)設定欄位環繞符(只允許一個字元),預設值為雙引號。該引數是在 PHP 4.3.0 中新增的。 和 fgets() 類似,只除了 fgetcsv() 解析讀入的行並找出 CSV 格式的欄位然後返回一個包含這些欄位的陣列。
fgetcsv() 出錯時返回 FALSE,包括碰到檔案結束時。
注意: CSV 檔案中的空行將被返回為一個包含有單個 null 欄位的陣列,不會被當成錯誤。

       fputcsv() ,fputcsv(file,fields,seperator,enclosure) .函式將行格式化為 CSV 並寫入一個開啟的檔案。 

       該函式返回寫入字串的長度。若出錯,則返回 false。。

1.CSV的讀取操作

  1. <?php  
  2.     $file= fopen( 'D:/file/file.csv' , 'r' );  
  3.     while ($data =fgetcsv($file)){    //每次讀取CSV裡面的一行內容   
  4.         print_r($data);//此為一個數組,要獲得每一個數據,訪問陣列下標即可
      
  5.     }   
  6.     fclose($file);  
  7. ?>  

<?php $file = fopen('D:/file/file.csv','r');while ($data = fgetcsv($file)) { //每次讀取CSV裡面的一行內容 print_r($data);//此為一個數組,要獲得每一個數據,訪問陣列下標即可 } fclose($file); ?>

2.CSV的寫入操作

  1. <?php  
  2.   $fp= fopen( 'd:/file/file.csv' , 'w' );  
  3.   fputcsv($fp,array ('aaa'
    ,'bbb' ,'cccc' ));  
  4.   fputcsv($fp,array ('mmm' ,'yyy' ,'haha' ));   //fputcsv可以用陣列迴圈的方式進行實現   
  5.   fclose($fp);  
  6. ?>  

<?php $fp = fopen('d:/file/file.csv', 'w');fputcsv($fp,array('aaa','bbb','cccc'));fputcsv($fp,array('mmm','yyy','haha')); //fputcsv可以用陣列迴圈的方式進行實現fclose($fp); ?>

3.輸出CSV(下載功能)

  1. <?php  
  2.     header( "Content-Type: text/csv" );  
  3.     header("Content-Disposition: attachment;filename=test.csv" );  
  4.     header('Cache-Control:must-revalidate,post-check=0,pre-check=0' );  
  5.     header('Expires:0' );  
  6.     header('Pragma:public' );  
  7.     echo"id,areaCode,areaName " ;  
  8.     echo"1,cn,china " ;  
  9.     echo"2,us,America " ;  
  10. ?>  

相關推薦

Python對csv檔案操作

 包括使用csv模組進行檔案讀寫,使用requests模組進行檔案傳送。 def pay_task_by_self(self): global success_writer, fail_writer, cont dir_path = os.path.dirname(_

Java實現CSV檔案操作

wechat:812716131 ------------------------------------------------------ 技術交流群請聯絡上面wechat ----------------------------------------------

csv檔案操作

函式: PHP有自帶的分析.csv函式:fgetcsv array fgetcsv ( int $handle [, int $length [, string $delimiter [, string $enclosure]]] ) handle 一個由 fopen()

對資料夾中所檔案(csv)進行操作

#coding=utf-8 #匯入csv包 #python版本為2.7 import csv import os #獲得當前目錄下的所有檔名字放入 current_dir=os.listdir(os

json.dump json.load與檔案操作

一.寫檔案 info={"name":"李小龍",'age':66,'love':"cat"} fp=open('testdict1.txt','w+',encoding='utf-8') fp.write(info) ls=list('1234567890') # print(ls) f

C/C++檔案操作 —— windowsAPI

轉自:http://blog.sina.com.cn/s/blog_6e7fed390100z0j1.html 基於C的檔案操作 在ANSI C中,對檔案的操作分為兩種方式,即流式檔案操作和I/O檔案操作,下面就分別介紹之。 一、流式檔案操作 這種方式的檔案操作有一個重要的結構

HDFS檔案操作 (通俗易懂)

首先來介紹兩個概念 ▪NameNode:領導級別。管 NameNode:領導級別。管理資料塊對映;處理客戶端的讀寫請求;配置副本策略;管理HDFS的名稱空間; DataNode:員工級別。負責儲存客戶端發來的資料塊block;執行資料塊的讀寫操作。 理資料 寫詳細步驟: 1、首先

React Native檔案操作

最近公司專案要求進行定時上傳位置資訊,及埋點,因為使用的是RN開發,一開始就是想到在Android和Ios原生裡進行操作。 在原生裡面實現了定時任務,Android裡面使用的是broadcastReceive + service + timer實現了。 現在需要生成一個日誌檔案,一開始想在原生裡面進

Android SD卡簡單的檔案操作

Android SD卡簡單的檔案讀寫操作   最近有這樣的需求,把每次統計到的資料,以txt形式儲存到手機SD卡或是手機記憶體中,遇到一些問題,記錄下來。   首先如果要在程式中使用sdcard進行儲存,我們必須要在AndroidManifset.xml檔案進行下

java大檔案操作,java nio 之MappedByteBuffer,高效檔案/記憶體對映

原文地址:https://www.cnblogs.com/lyftest/p/6564282.html   java處理大檔案,一般用BufferedReader,BufferedInputStream這類帶緩衝的Io類,不過如果檔案超大的話,更快的方式是採用MappedByteB

Scala的檔案操作與正則表示式

在本篇部落格中你將會學習並瞭解常用的檔案處理任務,例如讀取檔案的一行文字,本部落格的要點包含: Source.fromFile(...).getLines.toArray 輸出檔案所有行 Source.fromFile(...).mkString 以字串形式輸出檔案內容 將字串轉換為數字,可以使用toI

R語言開發之二進位制檔案操作

二進位制檔案是一個檔案,其中包含僅以位和位元組形式儲存的資訊(0和1),它們是不可讀的,因為其中的位元組轉換為包含許多其他不可列印字元的字元和符號,隨便我們嘗試使用任何文字編輯器讀取二進位制檔案將顯示為類似Ø和ð這樣的字元。 但是二進位制檔案必須由特定程式讀取才能使用。例如

03 -node.js 檔案操作

1、檔案寫入 // 匯入fs模組 const fs = require('fs'); // 寫入String var message = '第一個檔案寫入,hello world!'; // h

python的csv檔案及避免出現空行的方法

使用列表生成csv >>> import csv >>> keys=['a','b','c','d'] >>> data=[[1,2,3,4],[5

Java的檔案操作

                file(記憶體)----輸入流---->【程式】----輸出流---->file(記憶體)當我們讀寫文字檔案的時候,採用Reader是非常方便的,比如FileReader,InputStreamReader和BufferedReader。其中最重要的類是Input

php檔案操作

php操作檔案讀寫  $file_user = 'userfiles.txt';  $data = array(); 讀:  if(file_exists($file_user) && count(file($file_user))>1){    

Unity3D-各平臺檔案操作路徑目錄

public string AssetCachesDir { get { string dir = ""; #if UNITY_E

opencv學習(十七)之XML和YAML檔案操作

可能大部分人到現在接觸的XML和YAML檔案很少,等以後訓練人臉模型進行人臉識別的時候用的就多了。現在先了解一下這兩種檔案型別。 XML:Extensible Markup Language,可擴充套件標記語言,標準通用語言的子集,是一種用於標記電子檔案使其具

C/C++ 檔案操作總結

在程式設計的過程中,檔案的操作是一個經常用到的問題,在C++Builder中,可以使用多種方法對檔案操作,下面我就按以下幾個部分對此作詳細介紹,就是: 1、基於C的檔案操作; 2、基於C++的檔案操作; 3、基於WINAPI的檔案操作; 4、基於BCB庫的檔案操作;

Qt檔案操作 (文章收錄)

操作檔案是各種語言和類庫的基本功能. Qt是如何讀寫檔案的呢? 在Qt的文件有就有答案. 在QFile的文件中指出了幾種操作檔案的方法, 其中QTextStream是比較好理解和使用的: 讀取操作: The next example uses QTextStream to read a text f