最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

C++/Php/Python/Shell 程序按行讀取文件或者控制臺(tái)的實(shí)現(xiàn)

 更新時(shí)間:2017年03月31日 14:20:11   投稿:jingxian  
下面小編就為大家?guī)?lái)一篇C++/Php/Python/Shell 程序按行讀取文件或者控制臺(tái)的實(shí)現(xiàn)。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧

寫(xiě)程序經(jīng)常需要用到從文件或者標(biāo)準(zhǔn)輸入中按行讀取信息,這里匯總一下。方便使用

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];
  //按行讀取文件內(nèi)容
  while(fgets(buf, sizeof(buf), p_in) != NULL) {
    //寫(xiě)入到文件
    fwrite(buf, sizeof(char), strlen(buf), p_out);
  }

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

讀取標(biāo)準(zhǔn)輸入

#include<stdio.h>

int main(){
  char buf[2048];

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

  return 0;
}

/// scanf 遇到空格等字符會(huì)結(jié)束
/// gets 遇到換行符結(jié)束

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) 不指定長(zhǎng)度默認(rèn)為1024字節(jié)
    $buf = fgets($fp);

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

讀取標(biāo)準(zhǔn)輸入 

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

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

fclose($fp);
?>

3. Python

讀取標(biāo)準(zhǔn)輸入

#coding=utf-8

# 如果要在python2的py文件里面寫(xiě)中文,則必須要添加一行聲明文件編碼的注釋?zhuān)駝tpython2會(huì)默認(rèn)使用ASCII編碼。
# 編碼申明,寫(xiě)在第一行就好 
import sys

input = sys.stdin

for i in input:
  #i表示當(dāng)前的輸入行

  i = i.strip()
  print i

input.close()

4. Shell

讀取文件

#!/bin/bash

#讀取文件, 則直接使用文件名; 讀取控制臺(tái), 則使用/dev/stdin

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

讀取標(biāo)準(zhǔn)輸入

#!/bin/bash

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

以上這篇C++/Php/Python/Shell 程序按行讀取文件或者控制臺(tái)的實(shí)現(xiàn)就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • 老生常談C/C++內(nèi)存管理

    老生常談C/C++內(nèi)存管理

    下面小編就為大家?guī)?lái)一篇老生常談C/C++內(nèi)存管理。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2017-05-05
  • c語(yǔ)言實(shí)現(xiàn)兩個(gè)單鏈表的交叉合并方式

    c語(yǔ)言實(shí)現(xiàn)兩個(gè)單鏈表的交叉合并方式

    今天小編就為大家分享一篇c語(yǔ)言實(shí)現(xiàn)兩個(gè)單鏈表的交叉合并方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2019-12-12
  • C++編譯錯(cuò)誤variable-sized?object?may?not?be?initiali問(wèn)題

    C++編譯錯(cuò)誤variable-sized?object?may?not?be?initiali問(wèn)題

    這篇文章主要介紹了C++編譯錯(cuò)誤variable-sized?object?may?not?be?initiali問(wèn)題及解決,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-05-05
  • 深入理解Qt信號(hào)槽機(jī)制

    深入理解Qt信號(hào)槽機(jī)制

    信號(hào)槽是 Qt 框架引以為豪的機(jī)制之一。本文主要介紹了Qt信號(hào)槽機(jī)制,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2021-06-06
  • C++標(biāo)準(zhǔn)庫(kù)中sstream與strstream的區(qū)別詳細(xì)解析

    C++標(biāo)準(zhǔn)庫(kù)中sstream與strstream的區(qū)別詳細(xì)解析

    以下是對(duì)C++標(biāo)準(zhǔn)庫(kù)中sstream與strstream的區(qū)別進(jìn)行了詳細(xì)的分析介紹,需要的朋友可以過(guò)來(lái)參考下
    2013-09-09
  • 詳解C++中mutable的用法

    詳解C++中mutable的用法

    這篇文章主要介紹了詳解C++中mutable的用法,幫助大家更好的理解和學(xué)習(xí)C++,感興趣的朋友可以了解下
    2020-08-08
  • C++ cin輸入的多種方法詳解

    C++ cin輸入的多種方法詳解

    cin是C++編程語(yǔ)言中的標(biāo)準(zhǔn)輸入流對(duì)象,即stream類(lèi)的對(duì)象。cin主要用于從標(biāo)準(zhǔn)輸入讀取數(shù)據(jù),這里的標(biāo)準(zhǔn)輸入,指的是終端的鍵盤(pán)。接下來(lái)通過(guò)本文給大家分享C++ cin輸入的幾種方式,一起看看吧
    2021-09-09
  • C語(yǔ)言數(shù)據(jù)結(jié)構(gòu)之動(dòng)態(tài)分配實(shí)現(xiàn)串

    C語(yǔ)言數(shù)據(jù)結(jié)構(gòu)之動(dòng)態(tài)分配實(shí)現(xiàn)串

    這篇文章主要介紹了C語(yǔ)言數(shù)據(jù)結(jié)構(gòu)之動(dòng)態(tài)分配實(shí)現(xiàn)串的相關(guān)資料,希望通過(guò)本文能幫助到大家,讓大家實(shí)現(xiàn)數(shù)據(jù)結(jié)構(gòu)中動(dòng)態(tài)分配實(shí)現(xiàn)串的實(shí)例,需要的朋友可以參考下
    2017-10-10
  • C++中進(jìn)行txt文件讀入和寫(xiě)入的方法示例

    C++中進(jìn)行txt文件讀入和寫(xiě)入的方法示例

    這篇文章主要給大家介紹了C++中進(jìn)行txt文件讀入和寫(xiě)入的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家學(xué)習(xí)或者使用C++具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2019-09-09
  • VSCode同時(shí)更改所有相同的變量名或類(lèi)名的圖文教程

    VSCode同時(shí)更改所有相同的變量名或類(lèi)名的圖文教程

    這篇文章主要介紹了VSCode同時(shí)更改所有相同的變量名或類(lèi)名,本文通過(guò)圖文并茂的形式給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2020-05-05

最新評(píng)論

建宁县| 银川市| 龙门县| 栖霞市| 从化市| 怀安县| 东兴市| 靖西县| 临沂市| 金秀| 乌什县| 淳安县| 许昌市| 新化县| 博兴县| 安泽县| 天全县| 鹿邑县| 沽源县| 铜梁县| 讷河市| 南开区| 江津市| 邯郸市| 固安县| 古蔺县| 永泰县| 玉溪市| 辽源市| 周至县| 江安县| 鄯善县| 长武县| 邢台市| 乐平市| 花垣县| 水富县| 富川| 灌云县| 洪湖市| 临桂县|