C語言 文件的讀寫操作

来源:https://www.cnblogs.com/kailugaji/archive/2018/03/17/8592777.html
-Advertisement-
Play Games

//凱魯嘎吉 - 博客園 http://www.cnblogs.com/kailugaji/ 程式運行前的當前目錄: 程式運行結果: 當前目錄多了一個文件wrr.txt 打開該文件: 裡面已經有了剛剛輸入的內容: Hello world!I am RONGRONG WANG!My English n ...


 //凱魯嘎吉 - 博客園 http://www.cnblogs.com/kailugaji/

 1 #include<stdio.h>
 2 #include<stdlib.h>
 3 void main(){
 4     int a;
 5     void write();
 6     void read();
 7     while(1){
 8         printf("*****************\n");
 9         printf("1.write\n");
10         printf("2.read\n");
11         printf("0.exit\n");
12         printf("*****************\n");
13         printf("Please choose:");
14         scanf("%d",&a);
15         if(a==0){
16             exit(0);
17         }
18         else if(a==1){
19             write();
20         }
21         else if(a==2){
22             read();
23         }
24         else
25             printf("input error!\nPlease choose:");
26     }  
27     
28 }
29 
30 void write(){
31     FILE *fp;
32     char ch,filename[20];
33     printf("Please input the filename you want to write:");
34     scanf("%s",filename);
35     if(!(fp=fopen(filename,"wt+"))){
36         printf("Cannot open the file!\n");
37         exit(0);
38     }
39     
40     printf("Please input the sentences you want to write:");
41     ch=getchar();
42     ch=getchar();
43     while(ch!=EOF){  //EOF: Ctrl+z
44         fputc(ch,fp);
45         ch=getchar();
46     }
47     
48     fclose(fp);
49     
50 }
51 
52 void read(){
53     FILE *fp;
54     char ch,filename[20];
55     printf("Please input the filename you want to read:");
56     scanf("%s",filename);
57     if(!(fp=fopen(filename,"r"))){
58         printf("Cannot open the file!\n");
59         exit(0);
60     }
61     
62     printf("%s 的內容為:",filename);
63     while(ch!=EOF){  //EOF(end of file): Ctrl+z
64         ch=fgetc(fp);
65         putchar(ch);
66     }
67     
68     fclose(fp);
69 }

程式運行前的當前目錄:

程式運行結果:

當前目錄多了一個文件wrr.txt

打開該文件:

 

裡面已經有了剛剛輸入的內容:

Hello world!
I am RONGRONG WANG!
My English name is Kailugaji!
Thank you!

 


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 本文簡單介紹了WebService服務技術,提供了在Apache CXF 框架JAX-RS模塊下WebService開發的簡單示例。 ...
  • 迭代 基本含義 迭代是重覆反饋過程的活動,其目的通常是為了接近併到達所需的目標或結果。每一次對過程的重覆被稱為一次“迭代”,而每一次迭代得到的結果會被用來作為下一次迭代的初始值。 在計算科學中,迭代是程式中對一組指令(或一定步驟)的重覆。它既可以被用作通用的術語(與“重覆”同義),也可以用來描述一種 ...
  • 項目中原本使用的是手動獲取redis鏈接池的方式進行的與Spring的整合,現在需要修改為註解的形式。初次接觸redis,做個記錄。 1. 首先添加 jackson的jar包, 需要添加的 jar包共有三個,分別為:jackson-annoations-2.4.4.jar,jackson-core- ...
  • package com.swift.department; import java.sql.Connection; import java.sql.PreparedStatement; import java.sql.SQLException; /*SQL語句的編寫 JDBC操作MySQL資料庫常用... ...
  • 運行python程式的方式可分為: 1.互動式(能快速得到結果,但是無法保存文件) 2.python程式路徑 Python解釋器啟動: 1. 先啟動python解釋器 2. 將盤裡的文件讀入記憶體 3.解釋 輸入輸出: 1.輸出: 2.輸入:input()接收用戶輸入,把用戶輸入的內容轉成字元串 變數 ...
  • 一、Python介紹 Python是著名的“龜叔”Guido van Rossum在1989年聖誕節期間,為了打發無聊的聖誕節而編寫的一個編程語言。 Python這個名字,來自“龜叔”所摯愛的電視劇Monty Python’s Flying Circus。他希望這個新的叫做Python的語言,能符合 ...
  • 一、導入方式:import time 二、時間戳的概念:指格林威治時間1970年01月01日00時00分00秒(北京時間1970年01月01日08時00分00秒)起至現在的總秒數。 三、常用函數: 1.time.loclatime([secs]) #返回時間元祖: print(time.loclat ...
  • 1. Django安裝 2. 創建項目 如需要中文,可以修改django支持中文環境,編輯settings.py文件,設定內容如下: 3. 配置資料庫 Django預設採用sqllite3資料庫作為數據持久存儲,實際工作中一般使用MySQL作為結構化數據存儲,在python2中使用python-My ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...