使用工具类Properties
工具类有Load()方法 用于加载文件
首先将文件写成流(输入)
File file=new File(confPath)
in = new FileInputStream(file)
加载流load(in)如果需要 *** 作则完成具体 *** 作
输出流并保存文件
out2 = new OutputStreamWriter(new FileOutputStream(confPath),"GBK")
cp.store(out2)
完成
具体实例代码
public String updateConfParam(ConfParam cpl) throws IOException {
String error = null
Properties cp=new Properties()
InputStream in= null
OutputStreamWriter out1=null
OutputStreamWriter out2=null
JSONObject jObj = new JSONObject()
try {
String confPath=validateSystem(cpl.getConfAddress()+"/"+cpl.getConfName())
File file=new File(confPath)
in = new FileInputStream(file)
cp.load(in)
out1=new OutputStreamWriter(new FileOutputStream(confPath+".bak"),"GBK")
cp.store(out1)
cpl.setParaOldValue(cp.getProperty(cpl.getParaKey()))
cp.setProperty(cpl.getParaKey(), cpl.getParaValue())
out2 = new OutputStreamWriter(new FileOutputStream(confPath),"GBK")
cp.store(out2)
jObj.put("paraOldValue", cpl.getParaOldValue())
jObj.put("paraValue", cpl.getParaValue())
} catch (FileNotFoundException e) {
error=e.getMessage()
} catch (IOException e1) {
error = e1.getMessage()
}
finally{
if(in !=null){
in.close()
}
if(out1 !=null){
out1.close()
}
if(out2 !=null){
out2.close()
}
if(error != null){
jObj.put("error", error)
}
}
return jObj.toString()
}
*** 作文件的正确流程为:打开文件 -->读写文件 -->关闭文件。文件在进行读写 *** 作之前要先打开,使用完毕要关闭。所谓打开文件,就是获取文件的有关信息,例如文件名、文件状态、当前读写位置等,这些信息会被保存到一个 FILE 类型的结构体变量中。关闭文件就是断开与文件之间的联系,释放结构体变量,同时禁止再对该文件进行 *** 作。
在C语言中,文件有多种读写方式,可以一个字符一个字符地读取,也可以读取一整行,还可以读取若干个字节。文件的读写位置也非常灵活,可以从文件开头读取,也可以从中间位置读取。
文件流
所有的文件(保存在磁盘)都要载入内存才能处理,所有的数据必须写入文件(磁盘)才不会丢失。数据在文件和内存之间传递的过程叫做文件流,类似水从一个地方流动到另一个地方。数据从文件复制到内存的过程叫做输入流,从内存保存到文件的过程叫做输出流。
文件是数据源的一种,除了文件,还有数据库、网络、键盘等;数据传递到内存也就是保存到C语言的变量(例如整数、字符串、数组、缓冲区等)。我们把数据在数据源和程序(内存)之间传递的过程叫做数据流(Data Stream)。相应的,数据从数据源到程序(内存)的过程叫做输入流(Input Stream),从程序(内存)到数据源的过程叫做输出流(Output Stream)。
输入输出(Input output,IO)是指程序(内存)与外部设备(键盘、显示器、磁盘、其他计算机等)进行交互的 *** 作。几乎所有的程序都有输入与输出 *** 作,如从键盘上读取数据,从本地或网络上的文件读取数据或写入数据等。通过输入和输出 *** 作可以从外界接收信息,或者是把信息传递给外界。
我们可以说,打开文件就是打开了一个流。
C语言文件 *** 作教程:
【C语言精华】超详细C语言文件 *** 作知识点,打开文件、读取和追加数据、插入和删除数据、关闭文件、删除文件等_哔哩哔哩_bilibili
发布于 8 月前著作权归作者所有
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)