php與c 實現按行讀取文件
前言
感覺很糟糕的一場電話一面竟然給了二面通知,好吧,給自己一個機會也給對方一次機會,題外話。海量數據處理經常涉及到hash將原來文件的每一行散列到子文件中,那如何按行讀取文件呢,這裡記錄一下php和c的實現
很水的一篇,只是記錄一下常用的方法,防止面試尴尬
php代碼:
<?php
/**
* 按行讀取文件
* @param string $filename
*/
function readFileByLine ($filename)
{
$fh = fopen($filename, 'r');
while (! feof($fh)) {
$line = fgets($fh);
echo $line;
}
fclose($fh);
}
// test
$filename = "/home/wzy/test/sort.txt";
readFileByLine($filename);
c實現代碼:
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#define LEN 1024
int main(void)
{
char filename[LEN], buf[LEN];
FILE *fp;
int len;
scanf("%s", filename);
fp = fopen(filename, "r");
if (fp == NULL) exit(-1);
while (fgets(buf, LEN, fp) != NULL) {
len = strlen(buf);
buf[len - 1] = '\0'; // 去掉換行符
printf("%s\n", buf);
}
return 0;
}
感謝閱讀,希望能幫助到大家,謝謝大家對本站的支持!