C++如何动态读写dat文件

C++如何动态读写dat文件,第1张

在程序当中输入文件名的字符串,可以实现动态读写dat文件。

1、C语言标准库提供了一系列文件 *** 作函数。文件 *** 作函数一般以f+单词的形式来命名(f是file的简写),其声明位于stdioh头文件当中。例如:fopen、fclose函数用于文件打开与关闭;fscanf、fgets函数用于文件读取;fprintf、fputs函数用于文件写入;ftell、fseek函数用于文件 *** 作位置的获取与设置。

2、例程:

#include<stdioh>

int a;

char b,c[100],input[100],output[100];

int main(){

    gets(input);//态读读入输入文件

    gets(output);//态读读入输出文件

    FILE  fp1 = fopen(input, "r");//打开输入文件

    FILE  fp2 = fopen(output, "w");//打开输出文件

    if (fp1==NULL || fp2==NULL) {//若打开文件失败则退出

        puts("不能打开文件!");

        rturn 0;

    }

    fscanf(fp1,"%d",&a);//从输入文件读取一个整数

    b=fgetc(fp1);//从输入文件读取一个字符

    fgets(c,100,fp1);//从输入文件读取一行字符串

    

    printf("%ld",ftell(fp1));//输出fp1指针当前位置相对于文件首的偏移字节数

    

    fputs(c,fp2);//向输出文件写入一行字符串

    fputc(b,fp2);//向输出文件写入一个字符

    fprintf(fp2,"%d",a);//向输出文件写入一个整数

    

    fclose(fp1);//关闭输入文件

    fclose(fp2);//关闭输出文件,相当于保存

    return 0;

}

使用批处理命令来实现批量提取文件夹文件名一个文件夹下面有很多文件,如果要批量提取文件夹内所有文件名,知道如何 *** 作吗?比如,笔者电脑里面E盘文件夹下面有一个“42函数经典再现”的文件夹,想将这个文件夹下面的所有文件名批量提取到一个记事本文件里面。如果你也想批量提取文件名(批量获取一个文件夹内所有文件的文件名),可以按下面的步骤进行。第一步,新建一个txt格式的记事本文件。第二步,在记事本文件中输入:DIR /B>LISTTXT第三步,将此记事本文件后辍名,由txt改为bat。会d出重命名对话框,单击“是”。第四步,双击文件“新建文本文档bat”即可生成listtxt文件。打开txt文件就可以看到当前文件夹内的所有文件名列表。(温馨提示:你也可以把文件“新建文本文档bat”放在其他文件夹里运行,获取当前文件夹下面的所有文件名哦!)

首先,你的file控件要放到form表单内,其次,每个file控件的name属性应该不同。下面是我修改后的:

<html>

</head>

<script language="javascript" type="text/ecmascript">

var x=1;

//======================

//功能:在表单中input file控件

//参数:parentID---要插入input file控件的父元素ID

// inputID----input file控件的ID

//======================

function createInput(parentID,inputFileID){

var parent=$(parentID);//获取父元素

var div=documentcreateElement("div");//创建一个div容器用于包含input file

x++;

var divName=inputFileID+x;//随机div容器的名称

divid=divName;

var aElement=documentcreateElement("input"); //创建input

aElementname=divName;

aElementtype="file";//设置类型为file

var delBtn=documentcreateElement("input");//再创建一个用于删除input file的Button

delBtntype="button";

delBtnvalue="删除";

delBtnonclick=function(){ removeInput(parentID,divName)};//为button设置onclick方法

divappendChild(aElement);//将input file加入div容器

divappendChild(delBtn);//将删除按钮加入div容器

parentappendChild(div);//将div容器加入父元素

}

//============================

//功能:删除一个包含input file的div 容器

//参数:parentID---input file控件的父元素ID

// DelDivID----个包含input file的div 容器ID

//============================

function removeInput(parentID,DelDivID){

var parent=$(parentID);

parentremoveChild($(DelDivID));

}

//通过元素ID获取文档中的元素

function $(v){return documentgetElementById(v);}

</script>

<body>

<form action="testphp" method="post" enctype="multipart/form-data">

<div align="left" id="div_Pic" style="border:1px solid #CCCCCC">

<input name="PicFile" type="file" id="ShowPicFile">

</div>

<input type="button" onClick="createInput('div_Pic','PicFile')" name="button" id="button" value="+ 继续添加">

<input type="submit" value="提交">

</body>

</html>

然后php就可以通过遍历$_FILES来获得每个上传的文件。下面的简单例子只是列出每个文件的原文件名:

<php

forEach($_FILES as $f){

 echo $f["name"]"<br>";

}

>

在菜单栏依次点击:

Project->Settings->Debug下,Working directory和Program arguments,可实现你的要求。

或在VC的界面下,直接按Alt+F7,打开对话框来进行设置。

__file__ 全局变量储存了当前运行的py文件的文件名

比如

# cat testpy

print __file__

# cat t1py

import test

print "my",__file__

# python t1py

/root/testpyc

my t1py

以上就是关于C++如何动态读写dat文件全部的内容,包括:C++如何动态读写dat文件、yii里 怎么动态获取目录文件夹下的图片、JS动态创建的file控件,PHP 怎么获取上传的文件等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/9553775.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-29
下一篇 2023-04-29

发表评论

登录后才能评论

评论列表(0条)

保存