Discussion:
如何修改txt檔的某一行(用fopen)
(时间太久无法回复)
最近轉戰php
2004-12-05 03:46:54 UTC
Permalink
利用fopen
我可以用讀檔做出select的功能 fopen("檔名","r")
也可以用寫檔做出insert的功能 fopen("檔名","a")

但是update 和 delete 我做不出來

我現在的問題是卡在
update 和 delete必須先找出該資料所在位置
找到之後我沒辦法把檔案的讀寫頭拉回來

如果用fopen("檔名","w+")
一寫下去檔案就毀了
會把整個檔案都清掉

用fopen("檔名","a")又只能寫在檔案的尾巴
所以我做不出update 和 delete的功能

我會想這樣做的原因是因為許多的網頁空間都不提供資料庫
如果可以用動態網頁做到資料庫的功能
就可以省掉資料庫了
有沒有辦法對一個txt檔的指定某一行作修改?
或是插入一行,刪除一行
--
 盡力把Java學好
 一定要多看手冊

J2SE http://java.sun.com/j2se/1.4.2/docs/api/ 
 http://www.csie.nctu.edu.tw/document/java/jdk1.4/docs/api/index.html 
J2EE http://java.sun.com/j2ee/1.4/docs/api/index.html 
--
夫兵者不祥之器物或惡之故有道者不處君子居則貴左用兵則貴右兵者不祥之器非君子
之器不得已相簿 http://www.wretch.cc/album 有佈景主題 速度很快 可得志於天下
矣吉事尚左凶事尚右偏將軍居左上將軍居右言以喪禮處之殺人之眾以哀悲泣之戰勝以
喪禮處之道常無名樸雖小天下莫能臣侯王若能守之萬物將自賓天地相合以降甘露民莫
之令而自均始制有名名亦既有夫亦將知止知止可以不student.Dorm10.NCTU.edu.tw海
梁楓
2004-12-05 04:54:17 UTC
Permalink
Post by 最近轉戰php
用fopen("檔名","a")又只能寫在檔案的尾巴
所以我做不出update 和 delete的功能
我會想這樣做的原因是因為許多的網頁空間都不提供資料庫
如果可以用動態網頁做到資料庫的功能
就可以省掉資料庫了
有沒有辦法對一個txt檔的指定某一行作修改?
或是插入一行,刪除一行
fopen 一個 r 一個w+
將r 讀出 寫入w+
在將r關閉 w+ 覆蓋r

暫存的方式常有人做

不想用暫存的話,就把r讀到array,在重用w+
--
※ Origin: SayYA 資訊站 <bbs.sayya.org> 
◆ From: brain-c.com
網路遊俠
2004-12-05 05:03:26 UTC
Permalink
先把檔案讀入陣列

找看看資料所在位置後

刪除或修改相對應陣列元素

在將陣列寫入檔案〈覆蓋〉
Post by 最近轉戰php
利用fopen
我可以用讀檔做出select的功能 fopen("檔名","r")
也可以用寫檔做出insert的功能 fopen("檔名","a")
但是update 和 delete 我做不出來
我現在的問題是卡在
update 和 delete必須先找出該資料所在位置
找到之後我沒辦法把檔案的讀寫頭拉回來
如果用fopen("檔名","w+")
一寫下去檔案就毀了
會把整個檔案都清掉
用fopen("檔名","a")又只能寫在檔案的尾巴
所以我做不出update 和 delete的功能
我會想這樣做的原因是因為許多的網頁空間都不提供資料庫
如果可以用動態網頁做到資料庫的功能
就可以省掉資料庫了
有沒有辦法對一個txt檔的指定某一行作修改?
或是插入一行,刪除一行
--
 盡力把Java學好
 一定要多看手冊
J2SE http://java.sun.com/j2se/1.4.2/docs/api/ 

http://www.csie.nctu.edu.tw/document/java/jdk1.4/docs/api/index.html 
J2EE http://java.sun.com/j2ee/1.4/docs/api/index.html 
--
夫兵者不祥之器物或惡之故有道者不處君子居則貴左用兵則貴右兵者不祥之器非君子
之器不得已相簿 http://www.wretch.cc/album 有佈景主題 速度很快
可得志於天下
矣吉事尚左凶事尚右偏將軍居左上將軍居右言以喪禮處之殺人之眾以哀悲泣之戰勝以
喪禮處之道常無名樸雖小天下莫能臣侯王若能守之萬物將自賓天地相合以降甘露民莫
之令而自均始制有名名亦既有夫亦將知止知止可以不student.Dorm10.NCTU.edu.tw海
幫你把勇氣裝滿
2004-12-05 07:30:44 UTC
Permalink
我曾經有過一模一樣的問題

我自己想到的解決方式是
先用file把檔案全部讀取到陣列中,然後把那一行寫入字串後
再把整個檔案內容全部覆寫回去

※ 引述《iamstudent (最近轉戰php)》之銘言:
Post by 最近轉戰php
利用fopen
我可以用讀檔做出select的功能 fopen("檔名","r")
也可以用寫檔做出insert的功能 fopen("檔名","a")
但是update 和 delete 我做不出來
我現在的問題是卡在
update 和 delete必須先找出該資料所在位置
找到之後我沒辦法把檔案的讀寫頭拉回來
如果用fopen("檔名","w+")
一寫下去檔案就毀了
會把整個檔案都清掉
用fopen("檔名","a")又只能寫在檔案的尾巴
所以我做不出update 和 delete的功能
我會想這樣做的原因是因為許多的網頁空間都不提供資料庫
如果可以用動態網頁做到資料庫的功能
就可以省掉資料庫了
有沒有辦法對一個txt檔的指定某一行作修改?
或是插入一行,刪除一行
--
夫兵者不祥之器物或惡之故有道者不處君子居則貴左用兵則貴右兵者不祥之器非君子
之器不得已BBS telnet://bbs.wretch.cc 開個人板 超快 不用連署不可得志於天下
矣吉事尚左凶事尚右偏將軍居左上將軍居右言以喪禮處之殺人之眾以哀悲泣之戰勝以
喪禮處之道常無名樸雖小天下莫能臣侯王若能守之萬物將自賓天地相合以降甘露民莫
之令而自均始制有名名亦既有夫亦將知止知61-57-89-59.nty.dynamic.lsc.net.tw海
最近轉戰php
2004-12-05 07:46:09 UTC
Permalink
※ 引述《renyoh (幫你把勇氣裝滿)》之銘言:
Post by 幫你把勇氣裝滿
我曾經有過一模一樣的問題
我自己想到的解決方式是
先用file把檔案全部讀取到陣列中,然後把那一行寫入字串後
再把整個檔案內容全部覆寫回去
了解
謝謝大家

--
 盡力把Java學好
 一定要多看手冊

J2SE http://java.sun.com/j2se/1.4.2/docs/api/ 
 http://www.csie.nctu.edu.tw/document/java/jdk1.4/docs/api/index.html 
J2EE http://java.sun.com/j2ee/1.4/docs/api/index.html 
--
夫兵者不祥之器物或惡之故有道者不處君子居則貴左用兵則貴右兵者不祥之器非君子
之器不得已相簿 http://www.wretch.cc/album 有佈景主題 速度很快 可得志於天下
矣吉事尚左凶事尚右偏將軍居左上將軍居右言以喪禮處之殺人之眾以哀悲泣之戰勝以
喪禮處之道常無名樸雖小天下莫能臣侯王若能守之萬物將自賓天地相合以降甘露民莫
之令而自均始制有名名亦既有夫亦將知止知止可以不殆 r21602.csie.nctu.edu.tw海
Loading...