程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> C語言 >> C++ >> 關於C++ >> C++/Php/Python/Shell 程序按行讀取文件或者控制台的實現

C++/Php/Python/Shell 程序按行讀取文件或者控制台的實現

編輯:關於C++

C++/Php/Python/Shell 程序按行讀取文件或者控制台的實現。本站提示廣大學習愛好者:(C++/Php/Python/Shell 程序按行讀取文件或者控制台的實現)文章只能為提供參考,不一定能成為您想要的結果。以下是C++/Php/Python/Shell 程序按行讀取文件或者控制台的實現正文


寫程序經常需要用到從文件或者標准輸入中按行讀取信息,這裡匯總一下。方便使用

1. C++

 讀取文件

#include<stdio.h>
#include<string.h>

int main(){
  const char* in_file = "input_file_name";
  const char* out_file = "output_file_name";

  FILE *p_in = fopen(in_file, "r");
  if(!p_in){
    printf("open file %s failed!!!", in_file);
    return -1;
  }
    
  FILE *p_out = fopen(out_file, "w");
  if(!p_in){
    printf("open file %s failed!!!", out_file);
    if(!p_in){
      fclose(p_in);
    }
    return -1;
  }

  char buf[2048];
  //按行讀取文件內容
  while(fgets(buf, sizeof(buf), p_in) != NULL) {
    //寫入到文件
    fwrite(buf, sizeof(char), strlen(buf), p_out);
  }

  fclose(p_in);
  fclose(p_out);
  return 0;
}

讀取標准輸入

#include<stdio.h>

int main(){
  char buf[2048];

  gets(buf);
  printf("%s\n", buf);

  return 0;
}

/// scanf 遇到空格等字符會結束
/// gets 遇到換行符結束

2. Php

讀取文件

<?php
$filename = "input_file_name";

$fp = fopen($filename, "r");
if(!$fp){
  echo "open file $filename failed\n";
  exit(1);
}
else{
  while(!feof($fp)){
    //fgets(file,length) 不指定長度默認為1024字節
    $buf = fgets($fp);

    $buf = trim($buf);
    if(empty($buf)){
      continue;
    }
    else{
      echo $buf."\n";
    }
  }
  fclose($fp);
}
?>

讀取標准輸入 

<?php
$fp = fopen("/dev/stdin", "r");

while($input = fgets($fp, 10000)){
    $input = trim($input);
    echo $input."\n";
}

fclose($fp);
?>

3. Python

讀取標准輸入

#coding=utf-8

# 如果要在python2的py文件裡面寫中文,則必須要添加一行聲明文件編碼的注釋,否則python2會默認使用ASCII編碼。
# 編碼申明,寫在第一行就好 
import sys

input = sys.stdin

for i in input:
  #i表示當前的輸入行

  i = i.strip()
  print i

input.close()

4. Shell

讀取文件

#!/bin/bash

#讀取文件, 則直接使用文件名; 讀取控制台, 則使用/dev/stdin

while read line
do
  echo ${line}
done < filename

讀取標准輸入

#!/bin/bash

while read line
do
  echo ${line}
done < /dev/stdin

以上這篇C++/Php/Python/Shell 程序按行讀取文件或者控制台的實現就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved