文件读写工具简单实现(六)--写入按钮替换/修改指定行的内容

来源:互联网 发布:mac华康新篆体 编辑:程序博客网 时间:2024/05/29 03:24

写入文件有点复杂,我们要把其他输入框的内容更新到原来选的那行,还有更新至文件中,思路是:每一行的内容都不一样,要是一样还得考虑获取鼠标选择的行数,这就难了。

我这里文件内容的每一行都不一样,只要获取其他输入框的内容,替换到指定行中,然后在更新到文件里。


我们先写个方法,百度都有:

 /*  * 实现写入文件方法  * */ private void writeFile(File file, String content) {if (file == null || content == null) {return;}try {BufferedWriter writer = new BufferedWriter(new FileWriter(file));writer.write(content);writer.flush();writer.close();} catch (IOException e) {// TODO Auto-generated catch blocke.printStackTrace();} }


写入文件的方法,调用上面的方法,加起来就两句话(重点):

mTotalContent=mTotalContent.replace(sum, sumString);//替换内容
writeFile(mDestFile, mTotalContent);//写入文件中


写入按钮的实现,写入前考虑做个提示框是否确定修改:

//写入操作btn_Button_xieru.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) {//获取RF和参数内容String getName = textField_name.getText();String getRF=textField_RF.getText();String getNumber=textField_number.getText();String sumString =getName+" ="+getRF+","+getNumber; try{//弹出确认框,是否确定执行 int res=JOptionPane.showConfirmDialog(null, "将要修改为"+sumString+"是否继续", "是否继续", JOptionPane.YES_NO_OPTION);if(res==JOptionPane.YES_OPTION){ System.out.println("选择是后执行的代码");    //点击“是”后执行这个代码块//打印出来的数值看对不对System.out.println("ROM="+ROM);//鼠标点击位置的行数System.out.println("getRF="+getRF);System.out.println("getNumber="+getNumber);System.out.println("sumString="+sumString);//修改后的内容System.out.println("sum="+sum);//需要替换的内容,从鼠标指定的位置获取的mTotalContent=mTotalContent.replace(sum, sumString);//替换writeFile(mDestFile, mTotalContent);//写入文件中System.out.println("mTotalContent="+mTotalContent);//需要替换的内容//更新后,大输入框继续显示更新后内容,好下次在执行一次写入操作if(mTotalContent!=null){int start=mTotalContent.indexOf(prefixStart)+prefixStart.length();//从某处开始int end=mTotalContent.indexOf(prefixEnd);//到某处结束String finalRes=mTotalContent.substring(start, end);//大输入框只显示文件内某处开始到结束的范围//System.out.print(finalRes);textArea.setText("");textArea.append(finalRes+"\n");//显示内容到大输入框中}}else{System.out.println("选择否后执行的代码");    //点击“否”后执行这个代码块} }catch (Exception ex) {                  ex.printStackTrace();              }}   });
 
阅读全文
0 0