------Java培训、Android培训、iOS培训、.Net培训、期待与您交流! -------
/*
键盘输入一行字符,写入一个文件,再把该文件内容读出显示在屏幕上
*/
#include <stdio.h>
#define LEN 256
int main(int argc,const char * argv[]) {
//定义文件指针,打开文件指针(注意以读写的方式打开)
FILE *fp = fopen("save_inputString.txt","w+");
//判断是否打开成功
if(fp != NULL){
//定义数组
char str[LEN];
//接收用户从键盘上输入的内容
gets(str);
//遍历数组
for(int i =0;str[i]!='\0';i++){
//把数组中得内容逐个写入到数据文件
fputc(str[i], fp);
}
//把文件指针重新指向文件开头
rewind(fp);
//读取文件内容,先读取一个字符
char ch = fgetc(fp);
//通过循环判断,判断是否取到文件的末尾
while(ch != EOF){//如果没有到末尾,则一直读取,如果到了末尾,循环结束
printf("%c",ch);
//再次读取一个字符
ch = fgetc(fp);
}
printf("\n");
}
fclose(fp);
fp =NULL;
printf("Hello, World!\n");
return 0;
}
// 查看文本文件的内容
//
// Created by 李佳乐 on 15-3-23.
// Copyright (c) 2015年 李佳乐. All rights reserved.
/*
文件存储原理
根据字符查找它对应的ascii码值
把ascii码值转换为2进制,保存到磁盘中
*/
#include <stdio.h>
int main(int argc,const char * argv[]) {
//定义一个文件指针,并打开文件
FILE *fp = fopen("lookText.txt","r");
//是否打开成功 成功:返回文件的首地址
if(fp != NULL){
char str[4];
fgets(str,sizeof(str), fp);
puts(str);
}
fclose(fp);
fp =NULL;
printf("Hello, World!\n");
return 0;
}
//
// main.c
// 从文件中读写结构体信息
//
// Created by 李佳乐 on 15-3-23.
// Copyright (c) 2015年 李佳乐. All rights reserved.
//
#include <stdio.h>
int main(int argc, const char * argv[]) {
// 定义结构体
struct Student{
char name[20];
char sex;
int age;
float score;
};
//定义结构数组
struct Student stu[5]={
{"zbz",'F',38,59.99f},
{"sb",'F',48,59.99f},
{"cgx",'F',18,59.99f},
{"dlj",'M',8,59.99f},
{"banzhang",'Y',18,99.99f}
};
//写入数据
//定义文件指针并打开文件
FILE *fp = fopen("student.data", "wb+");
//判断打开是否成功
if(fp != NULL){
for(int i = 0;i < 5;i++){
fwrite(&stu[i], sizeof(struct Student), 1,fp);
}
//立即读取
printf("文件写入成功!\n");
//文件指针拉回来
rewind(fp);
//定义结构数组,接收从文件中读取的数据
struct Student stuArray[5];
printf("姓名\t\t性别\t\t年龄\t\t成绩\t\t\n");
//读取数据并保存到stuArray中
for(int i = 0;i<5;i++){
fread(&stuArray[i], sizeof(struct Student), 1, fp);
printf("%s\t\t%c\t\t%d\t\t%.2f\t\t\n",stuArray[i].name,
stuArray[i].sex,stuArray[i].age,stuArray[i].score);
}
}
fclose(fp);
fp = NULL;
printf("Hello, World!\n");
return 0;
}
//
// main.c
// 读取和写入一个二维数组
//
// Created by 李佳乐 on 15-3-23.
// Copyright (c) 2015年 李佳乐. All rights reserved.
/**/
#include <stdio.h>
int main(int argc, const char * argv[]) {
// 使用fprintf 和fscanf函数 将一个二维数组逐个写入到文件中
//并读取出来
//定义一个二维数组
int a[3][2]={1,2,3,4,5,6};
//定义文件指针
FILE *fp = fopen("saveArray.txt", "w+");
//判断
if(fp != NULL){
//格式化写入
for(int i = 0;i < 3;i++){
fprintf(fp,"%d,%d#",a[i][0],a[i][1]);
}
//拉回指针
rewind(fp);
//定义数组接收读取的内容
int array[3][2];
//循环读取
for(int i = 0;i <3;i++){
fscanf(fp, "%d,%d#",&array[i][0],&array[i][1]);
printf("%d\t\t%d\n",array[i][0],array[i][1]);
}
}
fclose(fp);
fp = NULL;
printf("Hello, World!\n");
return 0;
}
//
// main.c
// 读取和写入一个二维数组
//
// Created by 李佳乐 on 15-3-23.
// Copyright (c) 2015年 李佳乐. All rights reserved.
/**/
#include <stdio.h>
int main(int argc, const char * argv[]) {
// 使用fprintf 和fscanf函数 将一个二维数组逐个写入到文件中
//并读取出来
//定义一个二维数组
int a[3][2]={1,2,3,4,5,6};
//定义文件指针
FILE *fp = fopen("saveArray.txt", "w+");
//判断
if(fp != NULL){
//格式化写入
for(int i = 0;i < 3;i++){
fprintf(fp,"%d,%d#",a[i][0],a[i][1]);
}
//拉回指针
rewind(fp);
//定义数组接收读取的内容
int array[3][2];
//循环读取
for(int i = 0;i <3;i++){
fscanf(fp, "%d,%d#",&array[i][0],&array[i][1]);
printf("%d\t\t%d\n",array[i][0],array[i][1]);
}
}
fclose(fp);
fp = NULL;
printf("Hello, World!\n");
return 0;
}
//
// main.c
// 读取和写入一个二维数组
/**/
#include <stdio.h>
int main(int argc, const char * argv[]) {
// 使用fprintf 和fscanf函数 将一个二维数组逐个写入到文件中
//并读取出来
//定义一个二维数组
int a[3][2]={1,2,3,4,5,6};
//定义文件指针
FILE *fp = fopen("saveArray.txt", "w+");
//判断
if(fp != NULL){
//格式化写入
for(int i = 0;i < 3;i++){
fprintf(fp,"%d,%d#",a[i][0],a[i][1]);
}
//拉回指针
rewind(fp);
//定义数组接收读取的内容
int array[3][2];
//循环读取
for(int i = 0;i <3;i++){
fscanf(fp, "%d,%d#",&array[i][0],&array[i][1]);
printf("%d\t\t%d\n",array[i][0],array[i][1]);
}
}
fclose(fp);
fp = NULL;
printf("Hello, World!\n");
return 0;
}