java中如何实现删除文本文档里面的指定字符 java如何根据指定字符串删除文本文件中的相应一行

JAVA\u5982\u4f55\u5220\u9664\u6587\u672c\u6587\u6863\u91cc\u7684\u67d0\u4e00\u884c

\u4f60\u53ef\u4ee5\u7528StreamReader\u4e00\u884c\u4e00\u884c\u5730\u8bfb\uff0c\u76f4\u5230\u8bfb\u5b8c\uff0c\u4f60\u628a\u8bfb\u5230\u7684\u6bcf\u4e00\u884c\u52a0\u5230ArrayList\u5bf9\u8c61\u4e2d\u5b58\u653e\uff0c\u7136\u540e\u904d\u5386\u8fd9\u4e2aArrayList\u5bf9\u8c61\uff0c\u5bf9\u6bcf\u4e00\u884c\u8fdb\u884c\u5224\u65ad\u5904\u7406\uff0c\u4e0d\u8981\u7684\u76f4\u63a5\u5220\u9664\uff0c\u7136\u540e\u518d\u7528StreamWriter\u628aArrayList\u5bf9\u8c61\u4e2d\u7684\u6570\u636e\u91cd\u5199\u5230\u6587\u4ef6\u4e2d\uff0c\u539f\u6765\u7684\u6587\u4ef6\u8986\u76d6\u6389\u3002

\u53ef\u4ee5\u901a\u8fc7BufferedReader \u6d41\u7684\u5f62\u5f0f\u8fdb\u884c\u6d41\u8bfb\u53d6\uff0c\u4e4b\u540e\u901a\u8fc7readLine\u65b9\u6cd5\u83b7\u53d6\u5230\u7684\u5185\u5bb9,\u4e4b\u540e\u901a\u8fc7if\u5224\u65ad\u51fa\u7b26\u5408\u6761\u4ef6\u7684\u91cd\u5199\u5982\u65b0\u6587\u4ef6\uff0c\u4e0d\u7b26\u5408\u7684\u76f4\u63a5\u820d\u5f03\u5373\u53ef\u3002
\u4e3e\u4f8b\uff1a
BufferedReader bre = null;
OutputStreamWriter pw = null;//\u5b9a\u4e49\u4e00\u4e2a\u6d41
try {
String file = "D:/test/test.txt";
bre = new BufferedReader(new FileReader(file));//\u6b64\u65f6\u83b7\u53d6\u5230\u7684bre\u5c31\u662f\u6574\u4e2a\u6587\u4ef6\u7684\u7f13\u5b58\u6d41
pw = new OutputStreamWriter(new FileOutputStream(\u201cD:/test.txt\u201d),"GBK");//\u786e\u8ba4\u6d41\u7684\u8f93\u51fa\u6587\u4ef6\u548c\u7f16\u7801\u683c\u5f0f\uff0c\u6b64\u8fc7\u7a0b\u521b\u5efa\u4e86\u201ctest.txt\u201d\u5b9e\u4f8b
while ((str = bre.readLine())!= null) // \u5224\u65ad\u6700\u540e\u4e00\u884c\u4e0d\u5b58\u5728\uff0c\u4e3a\u7a7a\u7ed3\u675f\u5faa\u73af
{
if(str.indexOf("\u6392\u9664")<0){//\u5224\u65ad\u662f\u5426\u9700\u8981\u820d\u5f03
pw.write(str);//\u5c06\u8981\u5199\u5165\u6587\u4ef6\u7684\u5185\u5bb9\uff0c\u53ef\u4ee5\u591a\u6b21write
}
}
bre.close();//\u5173\u95ed\u6d41
pw.close();//\u5173\u95ed\u6d41
\u5907\u6ce8\uff1a\u6587\u4ef6\u6d41\u7528\u5b8c\u4e4b\u540e\u5fc5\u987b\u53ca\u65f6\u901a\u8fc7close\u65b9\u6cd5\u5173\u95ed\uff0c\u5426\u5219\u4f1a\u4e00\u76f4\u5904\u4e8e\u6253\u5f00\u72b6\u6001\uff0c\u76f4\u81f3\u7a0b\u5e8f\u505c\u6b62\uff0c\u589e\u52a0\u7cfb\u7edf\u8d1f\u62c5\u3002

我来解释一下好了,其实JAVA中没有直接在文件中删除或者修改一行或者几个字符的函数,但是既然楼主提到了C++中的文件指针,那么JAVA在RandomAccessFile(java.io.RandomAccessFile)类中提供了一系列的方法可以控制这个“文件指针”的东东,例如:getFilePointer方法就可以获取相对文件头的指针偏移量;也可以通skipBytes(int n)准确地跳过 n 字节输入。

更为详细的介绍,可以参考:
以及:



给分:
亲,要读入的文件自己建哦
源代码:
import java.io.InputStream;
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.FileReader;
import java.io.FileWriter;
import java.util.Scanner;
import java.io.FileNotFoundException;
import java.io.IOException;

public class zifutihuan
{
protected static void rep(String ch)
{
BufferedReader bis = null;
FileWriter bos = null;
String s = null;
try
{
bis = new BufferedReader(new FileReader("1.txt"));
bos = new FileWriter("2.txt");

while(null != (s = bis.readLine()))
{

s = s.replaceAll(ch,"");
System.out.println(s);
s= s+"\r\n";
bos.write(s);
}
bos.close();
bis.close();
s = null;

}
catch(FileNotFoundException e)
{
System.out.println("未找到文件\n");
}
catch(IOException ee)
{
System.out.println("aaa");
}

}

public static void main(String args[])
{

rep("123");

}
}

思路:用IO流读文件,将内容读为字符串,进行替换,在把新内容写回去,关闭IO流

用IO流 先把内容读出来 比如读出来后 全转为String 类型吧
用String的replace(a,b)方法可把a替换为b

将指定的字符用replace替换成空字符
如replace("ddddddd","")

  • 鎴戞湁涓涓猼xt鏂囨。(200MB),甯屾湜鍒犻櫎鏂囨。涓墍鏈夎涓"_"瀛楃涔嬪悗鐨鎵鏈夊唴瀹...
    绛旓細鐢╓ord鍗冲彲澶勭悊锛屾棤闇鍒殑浠涔堣蒋浠躲傜敤Word鎵撳紑鏂囦欢鍚庯紝鎸塁trl+H缁勫悎閿皟鍑烘浛鎹㈠璇濇锛屽湪鏌ユ壘涓緭鍏ワ細_*^13 鍦ㄦ浛鎹负涓緭鍏ワ細^p 鍕鹃変娇鐢ㄩ氶厤绗︼紝鍐嶇偣鈥滃叏閮ㄦ浛鎹⑩濓紝淇濆瓨鏂囦欢锛屾彁绀轰細涓㈠け鏍煎紡鏃讹紝涓嶇敤鐞嗕細锛岀‘瀹氬嵆鍙
  • java鎬庝箞鏉ヤ慨鏀箃xt涓殑鍐呭?
    绛旓細public class update_txt { public static void main(String[] args) { File file = new File("D:\\update_txt.txt");try { if(file.isFile()!=true){ file.createNewFile();} //璇诲叆鏁版嵁 BufferedReader buff = new BufferedReader(new FileReader(file));String manager = buff.readLine(...
  • 銆愮揣鎬ユ眰鍔┿戞眰绠鍗JAVA璁颁簨鏈▼搴
    绛旓細鎴戠殑 銆愮揣鎬ユ眰鍔┿戞眰绠鍗JAVA璁颁簨鏈▼搴 瑕佹眰:1.瀹炵幇鍩烘湰鐨勬枃鏈缂栬緫鍔熻兘:鏂板缓銆佹墦寮鍜屼繚瀛樻枃浠躲佸鍒跺拰绮樿创鏂囨湰銆2.鏀瑰彉鏂囨湰瀛椾綋澶у皬,鑳屾櫙棰滆壊銆3銆佸簲璇ヨ兘澶熷垽鏂枃鏈尯涓殑鏂囨湰鏄惁琚慨鏀逛簡,濡傛灉鏄,鍒欏簲璇ュ湪鏂板缓涓涓枃... 瑕佹眰:1.瀹炵幇鍩烘湰鐨勬枃鏈紪杈戝姛鑳:鏂板缓銆佹墦寮鍜屼繚瀛樻枃浠躲佸鍒跺拰绮樿创鏂囨湰銆 2.鏀瑰彉鏂囨湰瀛椾綋...
  • 鎬庢牱鐢Java瀹炵幇浠鏂囨湰鏂囨。涓鍙栨暟鎹苟瀛樺叆鏁版嵁搴
    绛旓細涓轰簡浣跨敤Java浠鏂囨湰鏂囨。涓鍙栨暟鎹苟瀛樺叆鏁版嵁搴擄紝鍙互閬靛惊浠ヤ笅姝ラ锛1. 浣跨敤Java I/O娴佽鍙栨枃鏈枃浠跺唴瀹广備緥濡傦紝鍙互閫氳繃`BufferedReader`鍜宍FileInputStream`鏉ヨ鍙栨枃鏈枃浠躲俙``java import java.io.BufferedReader;import java.io.FileInputStream;import java.io.IOException;import java.io.InputStream...
  • 澶у鎯冲綋绋嬪簭鐚胯鐭ラ亾app寮鍙戝伐鍏
    绛旓細Notepad++鏄敤浜庣紪杈憍ml銆佽剼鏈互鍙婅绗旇鐨鏈浣冲伐鍏枫傝繖涓伐鍏风殑鏈濂介儴鍒嗗湪浜,浣犲湪Notepad++涓婃墦寮鐨勪换浣曚竴涓鏂囨。,鍦ㄥ叧闂悗閮戒細鏈変竴涓畫鐣欐枃妗,瀹冩湁鍔╀簬鍦ㄦ剰澶鍒犻櫎閲嶈鏂囨。,杩樻湁鍔炴硶鎭㈠銆侼otepad++鏄竴娆鹃潪甯告湁鐗硅壊鐨勭紪杈戝櫒,鏄紑婧愯蒋浠,鍙互鍏嶈垂浣跨敤銆 2.XML Marker XML Marker宸ュ叿瀵Java绋嬪簭鍛樻潵璇存槸闈炲父閲嶈鐨勩傚畠...
  • 鍦java涓xml鏈夊摢浜涜В鏋愭妧鏈
    绛旓細缂虹偣锛氫笉鏄寔涔呯殑锛涗簨浠惰繃鍚庯紝鑻ユ病淇濆瓨鏁版嵁锛岄偅涔堟暟鎹氨涓簡锛涙棤鐘舵佹э紱浠庝簨浠朵腑鍙兘寰楀埌鏂囨湰锛屼絾涓嶇煡璇ユ枃鏈睘浜庡摢涓厓绱狅紱浣跨敤鍦哄悎锛欰pplet;鍙渶XML鏂囨。鐨灏戦噺鍐呭锛屽緢灏戝洖澶磋闂紱鏈哄櫒鍐呭瓨灏戯紱3.DOM4J鐢熸垚鍜岃В鏋怷ML鏂囨。 DOM4J 鏄竴涓潪甯搁潪甯镐紭绉鐨凧ava XML API锛屽叿鏈夋ц兘浼樺紓銆佸姛鑳藉己澶у拰鏋佺鏄撶敤浣跨敤...
  • java涓庝箞鐢ㄤ竴涓惊鐜鐞嗗涓鏂囨湰鏂囨。涓殑寮 瀛 鎬ユ!!璺眰!!_鐧惧害...
    绛旓細鏇村鏂囦欢锛屽彲浠ヨ繖鏍凤細for(int i=1; i<100; i++){ if(i==1){ read(""); }else{ read(String.valueOf(i)); } }
  • 甯垜鎯虫兂涓涓▼搴,鍦ㄣ俆XT鐨勬枃鏈枃妗i噷,鍒犻櫎婊¤冻瑕佹眰鐨勪竴琛,瑕佽兘鐢ㄩ氶厤...
    绛旓細濡傛灉鐢Java鐨璇濓紝鏈夋鍒欒〃杈惧紡鍙互鐢ㄣ傚鏋滅敤C鐨勮瘽锛屽彲浠ヨ冭檻鑷繁鍐欏尮閰嶇畻娉曘俇ltraEdit鐨勬鍒欒〃杈惧紡鍔熻兘寰堝己澶э紝鏄彲浠ユ浛鎹㈢殑銆傛浛鎹㈡椂閫変腑鈥滄鍒欒〃杈惧紡鈥濈殑澶嶉夋銆"*璧*鐐*棣*鍙" => ""
  • 鐢ㄨ浜嬫湰鍐java浠g爜鎬庝箞杩愯?
    绛旓細1銆佺敤娴忚鍣ㄦ墦寮鐢ㄨ浜嬫湰缂栧啓鐨浠g爜 鏂板缓鈥鏂囨湰鏂囨。鈥濆悗锛岄紶鏍囧彸閿偣鍑昏鏂囨湰鏂囨。锛屽湪鑿滃崟鏍忕殑鈥滄墦寮鏂瑰紡鈥濋夋嫨鈥滅敤璁颁簨鏈墦寮鈥濓紝涔熷彲浠ヨ缃粯璁ゆ墦寮鏂瑰紡涓衡滆浜嬫湰鈥濓紱鐢ㄨ浜嬫湰鎵撳紑鏂囨湰鏂囨。鍚庯紝鐩存帴鍦ㄨ鏂囨。鍐呮牴鎹嚜宸辩殑闇瑕佽緭鍏ユ兂瑕佺紪杈戠殑缃戦〉浠g爜銆2銆佽浜嬫湰鍐java浠g爜鎬庝箞杩愯 棣栧厛锛岄渶瑕佸畨瑁卝dk骞堕厤缃...
  • java涓庢牱灏嗚緭鍏ョ殑鏂囦欢淇濆瓨涓簍xt鏂囨。
    绛旓細浣犳槸瑕佹妸鍙槸杈撳叆鐨鏁版嵁鍐欏叆Txt锛岃繕鏄鎶婃帶鍒跺彴鐨勬暟鎹啓鍏xt锛熷鏋滄槸绗竴绉嶏紝閭d箞濡備笅锛歱ackage test;import java.io.BufferedWriter;import java.io.File;import java.io.FileWriter;import java.io.IOException;import java.util.Scanner;public class Student{ public static void main(String[] args)...
  • 扩展阅读:免费ai智能写论文一键生成 ... java中读取txt文本内容 ... ai论文 ... word文档在线编辑 ... 怎么将文本文txt改为java ... java如何删除一个文件 ... 怎么自动将txt改成java ... java删除生成的txt文件 ... java删除txt文本中的内容 ...

    本站交流只代表网友个人观点,与本站立场无关
    欢迎反馈与建议,请联系电邮
    2024© 车视网