a715fstr.cpp

来自「quinto esempi vari per c++ (schemi base)」· C++ 代码 · 共 36 行

CPP
36
字号
// nuovi elementi: fstream, ios::in, ios::out, ios::binary, |, seekp(), ios::cur
// nuovi concetti: lettura-scrittura su file
// ATTENZIONE: ACCERTARSI CHE I FILE FORNITI COME ARGOMENTO POSSANO ESSERE MODIFICATI
#include <iostream>
#include <fstream>

using namespace std;

int main(int argc, char* argv[]) {
  if (argc < 2) {
    cout << "Bisogna fornire il nome di un file (modificabile) come argomento!" << endl;
    exit(1);
  }
  fstream iofile(argv[1], ios::in | ios::out | ios::binary);
  if (!iofile) {
    cerr << "Errore: file in/out non puo' venire aperto.\n";
    exit(2);
  }
  else {
    cout << "Il file " << argv[1] << " esiste gia': posso modificarlo? (s/N)";
    char ch = toupper(cin.get());
    if (ch != 'S') exit(3);
  }
  cout << "\nSto modificando il file " << argv[1] << ".....\n";
  char c;
  while ((c = iofile.get()) != EOF)
    if (islower(c)) {
      iofile.seekp(-1, ios::cur);  // torna indietro di un byte
      c = toupper(c);
      iofile.put(c);
    }
  iofile.close();
  cout << "Il file " << argv[1] << " e' stato modificato!" << endl;
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?