Chuyển đến nội dung
Diễn đàn CADViet
Đăng nhập để thực hiện theo  
NDBNGO

Nhờ hướng dẫn sử lý file số liệu(Text) bằng LISP

Các bài được khuyến nghị

Có thể đề mục của mình không rõ nghĩa .Vậy mình đặt yều cầu cụ thể như sau :

Nếu mình có 2 file văn bản nguồn,mình muốn kết hợp 2 file này thành 1 file đích duy nhât với các yêu cầu cụ thể theo ý muốn của ngưòi sử dụng.

Mình gửi lên 3 file này để diễn đàn xem :

File1,file 2 là file nguồn,file 3 là file đích( File muốn tạo )

 

http://www.4shared.com/file/gDB1Y_q3/FILETEXT.html

Mình đã tìm trên diễn đàn ,nhưng các bài viết bằng lisp sử lý các danh sách này gần như không có.

Mong diễn dàn giúp đỡ.

Xin cảm ơn.

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác

Bác xem lại cấu trúc file2, có lẽ vì bác viết vội nên không thống nhất.

Theo tôi hiểu file2 có cấu trúc như sau:

Ký hiệu được ghép sau đó đến các ký hiệu nhận biết, các ký hiệu này được phân cách với nhau bởi dấu phảy hoặc 1 ký tự nào đó nhưng phải thống nhất, tôi thấy không có sự thống nhất.

Đây là vấn đề xử lý chuỗi và hoàn toàn có thể làm được.

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác

Mình muốn đây là 1 ví dụ để xử lý dang sách lên 1 mức cao hơn.

File 2 câu trúc là

* 1,2,4,6

HT 7,13,35,37

TT 11,29

GI 25,33

BB 30,46,59

CQ 34.49

LR 50,51

LN 60,61

Sau các ký tự *,HT,TT... cách ra là các số thứ tự ở File 1

* ghep thành *1.*2,*4,*6

HT phải ghép trước các số HT7,HT13,HT35,HT37 ...

...

Bạn giúp cho nhé

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác

Mình cần cách sử ký các danh sách rất nhiều ghép FIle,nối file ,chuyển đổi hàng côt...

vậy nên cần có chương trình để làm việc tốt hơn.

Cảm ơn.

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác

Bác xem thử có được không nhé.

(defun Split(StrOrg Delimiter / ListAnswer)
 (setq ListAnswer nil)	
 (while (not (null (setq DeliPoint (vl-string-search Delimiter StrOrg))))
(setq ListAnswer (append ListAnswer (list (substr StrOrg 1 DeliPoint))))
(setq StrOrg (substr StrOrg (+ (strlen Delimiter) 1 DeliPoint)))	
 )
 (setq ListAnswer (append ListAnswer (list StrOrg)))
)
(defun StringX(Char Num)
 (setq I 0
String "")
 (while (< I Num)
(setq I (1+ I)
  String (strcat String Char))
 )  
)
(defun c:ghepfile()
 (setq File1 (open "D:\\FILETEXT\\FILE1.txt" "r")
File3 (open "D:\\FILETEXT\\FILE3.txt" "a"))  
 (while (setq Line1 (read-line File1))
(setq LLine1 (split Line1 " ")	  
  I 0
  J 0
  Len (length LLine1))
(while (< i Len)
  (if (/= (nth I LLine1) "")
(setq Str1 (nth I LLine1)
	  J I
	  I Len)
  )
  (setq I (1+ I))
)
(setq File2 (open "D:\\FILETEXT\\FILE2.txt" "r")
  W 0)
(while (setq Line2 (read-line File2))
  (setq LLine2 (split Line2 " ")
	Str2 (nth 0 LLine2)
	LLine21 (split (nth 1 LLine2) ",")
	I 0
	Len (length LLine21))
  (while (< I Len)
(if (= Str1 (nth I LLine21))
  (progn
	(setq I Len
	  W 1)
	(write-line (strcat (stringx " " J) Str2 (substr Line1 (+ J 1))) File3)
  )
)
(Setq I (1+ I))
  )
)
(close file2)
(if (= W 0) (write-line Line1 File3))
 )
 (close file1)
 (close file3)
)

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác

Chương trình của bạn đương bị lỗi ,đây là lỗi khi chạy chương trình trên autocad

Command: ghepfile

; error: bad argument type: FILE nil

Do vậy chưa chạy được để xem kết quả

Bạn xem giúp nhé.

 

Mình nhầm ,sau khi xem file mới biết được cấu trúc file của bạn.

Kết quả tốt.

Bạn sửa giúp cho mình thành:

Nhập file số liệu thứ nhât:

Nhập file số liệu thứ 2:

Cho File kết quả:

Để có thể đưa vào thư mục bất kỳ.

Cảm ơn bạn rất nhiều.

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác

GỬi Hoa35ktxd.

Nhờ bạn viết giúp cho đoạn sử lý văn bản này nhé.

Minh có 2 file.File 1 là file nguồn,file 2 là file đích(File kết quả)

Nhờ bạn giúp cho chương trình:

nhập file số liêu gố(File1):

Nhập file kết quả (File 2)

Cảm ơn bạn.

http://www.4shared.com/file/-wSuPwiL/SOLIEU.html

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác

Thì ra đây là số liệu từ máy TOPCON

Cái này cũng dễ thôi, tại bạn không chịu khó đọc hướng dẫn sử dụng máy TOPCON thôi

Vì máy này có đầy đủ chức năng hết

Nếu mình đoán không lầm thì bạn đọc điểm mia từ máy toàn đạc xong

bạn muốn xuất ra file txt có định dạng cần thiết để xuất ra AUtoCAd chứ j

Cái này thì trên phần mềm của máy đã có rồi, bạn đọc kỹ thử xem nhé

Còn không thì trên hộp htoại của TopCon có sẵn bẳng dữ liệu như : tọa độ x, y, z, ghi chú điểm như Excel

bạn có thể dùng Ctrl+C và Ctrl+V dán qua Ecxel

và từ trên Excel bạn có thể chuyển đổi hệ trục x thành y, y thành x...

Ctrl+C và Ctrl+V dán qua NotePad bạn được định dạng như ý

 

Bon...on...n

  • Vote giảm 1

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác

Gửi vuvuzula

Cảm ơn bạn ,mình cũng sử dụng từ tcom1.5 đếm topconlink 7.02 rồi.Không phủ nhận những điều bạn nói .Hơn nữa cái này tôi cũng đã viết băng pascan ra kêt quả đã gửi.Hơn nữa phần mềm topo 5.0 cho sử lý ngay ra kết quả tôi cũng đang sử dụng.

Nhưng hiện nay tôi muốn nghiên cứu để chuyển tất cả trên menu Autocad các việc sử lý số liệu đồng bộ cho 1 chương trình sử lý từ khâu đo đến ra kết quả.Thông qua việc này để học hỏi thêm về việc lập trình lisp sử lý chuỗi trên cad.

Cảm ơn bạn có ý kiến.

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác
Gửi vuvuzula

Cảm ơn bạn ,mình cũng sử dụng từ tcom1.5 đếm topconlink 7.02 rồi.Không phủ nhận những điều bạn nói .Hơn nữa cái này tôi cũng đã viết băng pascan ra kêt quả đã gửi.Hơn nữa phần mềm topo 5.0 cho sử lý ngay ra kết quả tôi cũng đang sử dụng.

Nhưng hiện nay tôi muốn nghiên cứu để chuyển tất cả trên menu Autocad các việc sử lý số liệu đồng bộ cho 1 chương trình sử lý từ khâu đo đến ra kết quả.Thông qua việc này để học hỏi thêm về việc lập trình lisp sử lý chuỗi trên cad.

Cảm ơn bạn có ý kiến.

Mình nghĩ là bạn chủ yếu phục vụ cho việc làm quen và học lisp. Chứ để làm ra kết quả để tạo ra tờ bản đồ hoàn chỉnh thì có rất nhiều phần mềm thôi. Bạn tạo menu trong cad sẽ mất nhiều thời gian để làm đúng theo ý tưởng của mình. Với mình thì cái gì đã có thì không cần phải đi sâu vào (đau đầu, mất thời gian). Bạn hãy xem là trong công việc của bạn có những gì ta có thể tự động hoá được và có thể lập trình thì bạn hãy nghiên cứu hoặc cùng đưa lên diễn đàn thảo luận. Chúng ta không nhận thấy rằng diễn đàn CadViet thật tuyệt vời hay sao? Ở đó có những người bạn hết sức chân thành và nhiệt tình. Chúc bạn có những ý tưởng hay và có ích cho ngành trắc địa của chúng ta.

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác

Vâng đúng thế ,1 công đôi việc ,vừa học thêm lisp,Vlisp ,hộp thoại vừa có thể áp dụng vào chuyên môn .Bạn thấy việc rải ký hiệu,xóa text... có hiệu quả không.Để chuyên nghiệp hóa thành chương trình thì kiến thức trắc địa phải vũng và các thuật toán đang được trao đổi giúp cho có tính chuyên nghiệp cao và dễ sử dụng là việc của chúng ta.

Giống như có bạn bỏ rất nhiều công nghiên cứu ,biên dịch và giới thiệu các phầm mềm sử lý số liệu.Nhưng có lẽ chỉ hợp với nước ngoài,không tiện dụng cho thực tế làm trắc địa nên ít bạn tham gia.

Ý mình là từ thực tế cái gì có thể làm cho công việc nhanh nhất,hiệu quả nhất.Cố gắng qui gọn về 1 nơi thôi,chứ cái gì cũng phải học ,phải dò để sử dụng chắp vá mãi ,e rằng cũng như học võ chỉ biết múa võ mà thôi.Trắc địa là dánh thật chứ đâu biểu diễn.

Tôi cũng có những người bạn ,phầm mềm sử lý của họ phải gọi là đại cao thủ,sử lý tuyệt vời ...nhưng họ chỉ sử dụng cho họ thôi nên chưa thể giới thiệu cho các bạn được. Trong khi đó phần mềm Geosof của 1 tiến sỹ trắc địa thì lại chẳng có ai dùng .

Tính hiệu quả trong sử lý là điều quan trọng nhất.Những diều đang trao đổi trên diễn đàn này là mình muốn phục vụ cho điều đó.

Chúng ta thời gian sống hữu hạn nên phải tìm 1 hướng riêng cho mình.

Cảm ơn bạn.

Ngô Đông Phương Tel 0988529640

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác
Vâng đúng thế ,1 công đôi việc ,vừa học thêm lisp,Vlisp ,hộp thoại vừa có thể áp dụng vào chuyên môn .Bạn thấy việc rải ký hiệu,xóa text... có hiệu quả không.Để chuyên nghiệp hóa thành chương trình thì kiến thức trắc địa phải vũng và các thuật toán đang được trao đổi giúp cho có tính chuyên nghiệp cao và dễ sử dụng là việc của chúng ta.

Giống như có bạn bỏ rất nhiều công nghiên cứu ,biên dịch và giới thiệu các phầm mềm sử lý số liệu.Nhưng có lẽ chỉ hợp với nước ngoài,không tiện dụng cho thực tế làm trắc địa nên ít bạn tham gia.

Ý mình là từ thực tế cái gì có thể làm cho công việc nhanh nhất,hiệu quả nhất.Cố gắng qui gọn về 1 nơi thôi,chứ cái gì cũng phải học ,phải dò để sử dụng chắp vá mãi ,e rằng cũng như học võ chỉ biết múa võ mà thôi.Trắc địa là dánh thật chứ đâu biểu diễn.

Tôi cũng có những người bạn ,phầm mềm sử lý của họ phải gọi là đại cao thủ,sử lý tuyệt vời ...nhưng họ chỉ sử dụng cho họ thôi nên chưa thể giới thiệu cho các bạn được. Trong khi đó phần mềm Geosof của 1 tiến sỹ trắc địa thì lại chẳng có ai dùng .

Tính hiệu quả trong sử lý là điều quan trọng nhất.Những diều đang trao đổi trên diễn đàn này là mình muốn phục vụ cho điều đó.

Chúng ta thời gian sống hữu hạn nên phải tìm 1 hướng riêng cho mình.

Cảm ơn bạn.

Ngô Đông Phương Tel 0988529640

Cám ơn bạn. Đúng như bạn nói đó, mình chỉ có ý là không nên đầu tư vào cái đã có sắn và rất ok rồi thôi. Nó làm đầu chúng ta nổ tung lên mất. Mình có một cái bệnh là "Thích nghiên cứu" . Chính cái bệnh đó mà mình rất hay tò mò và cái gì cũng muốn biết. Chính vì lẽ đó mà mình thường tìm hiểu cái ưu và nhược của từng phần mềm để so sánh, sử dụng và dàn xếp phương pháp cho hợp lý. Như bạn nói đó :

" Tôi cũng có những người bạn, phầm mềm xử lý của họ phải gọi là đại cao thủ, xử lý tuyệt vời ...nhưng họ chỉ sử dụng cho họ thôi nên chưa thể giới thiệu cho các bạn được "
. Bạn nói không sai chút nào, mình cũng vậy thôi, mình chỉ nghiên cứu những gì cần thiết cho công việc mà mình đang làm, nếu mà tôi biết được cái gì hay mà trong công việc tôi không sử dụng và nếu ai hỏi, tôi cũng sẽ trả lời. Quan điểm của mình là: Biết đến đâu trả lời đến đấy và không giấu điều gì cả. Phải cùng nhau tiến bộ chứ! Tại sao các phần mềm trắc địa như : Geosof của thầy Đinh Công Hoà lại ít người dùng, đó chính là vấn đề maketting của phần mềm đó. Ít người quảng bá, phần mềm đòi hỏi phải có money. Mình đã nghe phần mềm đó nhưng chưa sử dụng bao giờ. Không chỉ có riêng phần mềm đó mà có rất nhiều phần mềm Trắc địa khác. Tại sao bạn lại hỏi mình là việc rải kí hiệu và xoá text có hiệu quả không? Như vậy là hỏi có ý gì vậy? . Mình lập trình còn đang ở dạng I T ít, dạng mầm non đấy mà, nên vấn đề về khung bản đồ mà mình đưa ra chủ yếu phục vụ cho công việc tạo khung trong bình đồ dạng tuyến nên mình đưa ra mọi người sử dụng nếu cùng mục đích. Mình cũng có 1 số dụng cụ tốt cho việc thành lập bản đồ địa hình (Bình đồ địa hình chính xác hơn). Rất vui khi làm quen với bạn.

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác

Phần mềm Geosol của T.s Đinh Công Hòa ,Phần Mapsite của tiến sỹ Nguyễn thế Thận,Phần Picknet của nhóm PGS.Ts Trần Khánh,Trần Ánh Dương...

rất nhiều cây đa ,cây đề ,danh xưng.Chỉ có duy nhất có Picknet có tên tuổi và được công nhận và đáng nể (Nhưng chỉ làm bình sai).

Dưới tiếp là DP survey của Kim lai danh xưng lừng lẫy nhưng cũng không ai thèm dùng dù tiếp thị khắp nới.

HHmap Dương Ngọc Hiền thì sử dụng hạn chế cho 1 số tính năng giao thông ,lẽ ra cũng không kém cạnh nhưng đứng cạnh ông khổng lồ Nova 2005 nên mất thế và không thể phát sáng.

Các phần mềm Ge,Ma đều hạn chế vì là các modun chạy trên môi trường Dos,Gía 4-5 triệu.Không thể chạy thẳng vào cad mà phải qua dxf,thủ tục rắc rối,các tính năng phần mêm hạn chế ,không linh hoạt và tùy biến như Topo. Phần Ge đắt so với các tính năng đã có 5 tr bỏ ra mà o có gì đặt sắc) muốn chạy đồng mức phải qua Sufer rồi chạy chồng lên.Khung bản vẽ không có tính năng tự dông phân mảnh và cắt đối tượng ngoài khung.Không chuyển các điểm khống chê,đo vẽ lên bản vẽ...nếu free cũng rất ít người dùng.

Đứng trên thang điểm thì các phần này chỉ đưojc 2/10 so với topo.Mà topo,nova,tkk thì 1 số tính năng mạnh (Cũng như SDA.SDR,sofdek...) như chạy đồng mức,tùy biến cắt ngang ,cát dọc,chạy tuyến... thì còn rất nhiều điều phải cải tiến .và như thế mới gặp các bạn ở đây.

Về chuyên nghiệp thì chưa 1 phần mềm Việt đạt 1 góc của TOPO5.0(Và đây là phần mềm được nhiều nhât.

Về mảng địa chính thì chuyên nghiệp hơn nên mình không bàn ở đây.

Tìm mặt mạnh và yếu của chúng để phần nào nghiên cứu ,viết thêm là điều rất cần thiết.

Cảm ơn.

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác
Phần mềm Geosol của T.s Đinh Công Hòa ,Phần Mapsite của tiến sỹ Nguyễn thế Thận,Phần Picknet của nhóm PGS.Ts Trần Khánh,Trần Ánh Dương...

rất nhiều cây đa ,cây đề ,danh xưng.Chỉ có duy nhất có Picknet có tên tuổi và được công nhận và đáng nể (Nhưng chỉ làm bình sai).

Dưới tiếp là DP survey của Kim lai danh xưng lừng lẫy nhưng cũng không ai thèm dùng dù tiếp thị khắp nới.

HHmap Dương Ngọc Hiền thì sử dụng hạn chế cho 1 số tính năng giao thông ,lẽ ra cũng không kém cạnh nhưng đứng cạnh ông khổng lồ Nova 2005 nên mất thế và không thể phát sáng.

Các phần mềm Ge,Ma đều hạn chế vì là các modun chạy trên môi trường Dos,Gía 4-5 triệu.Không thể chạy thẳng vào cad mà phải qua dxf,thủ tục rắc rối,các tính năng phần mêm hạn chế ,không linh hoạt và tùy biến như Topo. Phần Ge đắt so với các tính năng đã có 5 tr bỏ ra mà o có gì đặt sắc) muốn chạy đồng mức phải qua Sufer rồi chạy chồng lên.Khung bản vẽ không có tính năng tự dông phân mảnh và cắt đối tượng ngoài khung.Không chuyển các điểm khống chê,đo vẽ lên bản vẽ...nếu free cũng rất ít người dùng.

Đứng trên thang điểm thì các phần này chỉ đưojc 2/10 so với topo.Mà topo,nova,tkk thì 1 số tính năng mạnh (Cũng như SDA.SDR,sofdek...) như chạy đồng mức,tùy biến cắt ngang ,cát dọc,chạy tuyến... thì còn rất nhiều điều phải cải tiến .và như thế mới gặp các bạn ở đây.

Về chuyên nghiệp thì chưa 1 phần mềm Việt đạt 1 góc của TOPO5.0(Và đây là phần mềm được nhiều nhât.

Về mảng địa chính thì chuyên nghiệp hơn nên mình không bàn ở đây.

Tìm mặt mạnh và yếu của chúng để phần nào nghiên cứu ,viết thêm là điều rất cần thiết.

Cảm ơn.

Bạn nói như vậy chứng tỏ bạn biết rất nhiều các phần mềm trắc địa hiện nay, đa số các thầy lập trình ra đều phải mua vì đó là mồ hôi công sức, thời gian, tiền bạc và cả chất xám nữa. Xin đính chính lại tên tuổi của người thầy mà bạn nói ra, đó là thầy Tiến sĩ Trần Thuỳ Dương chứ không phải thầy Trần Ánh Dương "Người đã dạy cho mình biết rất nhiều thứ, từ trong cuộc sống và trong học tập". Còn thầy Nguyễn Thế Thận, hiện tại thầy đang có phần mềm Mapsite chạy trong môi trường AutoCad (Biên tập, thành lập bản đồ địa hình, tính toán khối lượng đào đắp...) và phần mềm Mapsite Gis chạy trên nền GIS (Thế mạnh của phần mềm Mapsite Gis là dùng trong quy hoạch rất tuyệt vời). Các thầy đều là các tấm gương mẫu mực để chúng ta học hỏi. Mình đã có một thời gian hoạt động trong trường đại học Xây dựng nhưng do một số lý do nên có lẽ không có duyên với ngành sư phạm. Mình cũng ít tuổi thôi, mình sinh năm 1984

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác

Mình cũng hay gặp thầy Khánh và tranh luận ,thầy Dương thì mình cũng gặp ở đó nhưng mình không để ý lắm nên nhiều khi sai tên lót.Phần Picknet khoảng 5 tr ,mua cũng được còn các phần khác của các thầy khác thì không nên( Xem phần chitietwin của thày trần Trung Anh thì bôi bác quá nên miễn bàn vì nó chỉ đáng là sản phẩm của sviên mới thôi.

Mình thì hơn bạn nhiều tuổi lắm khi các thầy đó vừa ra trường và mới là k.s bình thường thôi.

Thầy Hòa và thầy Thuận thì phải phải sống chết theo sufer thôi(đều có sách về nó).

Cảm ơn em.

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác

Gửi hoa35ktxd

Mình sửa được việc đọc file 1và file 3 kết quả bằng hàm getfiled ,nhưng file2 thì chịu không sửa được .

Bạn hướng dẫn nhé.

Bạn giúp cho ,vì hình như sử lý chuỗi ,ít có thành viên của cadviet tham gia thì phải,nên phải nhờ bạn thôi.

Mong bạn nhiều.

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác

bác hãy sửa đoạn này

"D:\\FILETEXT\\FILE1.txt"

như sau

(getstring "\nChon FILE1: ")

 

Hien nay toi dang om nen chua xem duoc yeu cau thu hai cua bac.bac can noi ro qui luat.

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác

Cảm ơn ,tôi sẽ chuyển sang file cad ,nói về quy luật cho bạn.

(setq File2 (open "D:\\FILETEXT\\FILE2.txt" "r")

      W 0)

Đoạn này sửa thế nào để chon file 2

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác

Cảm ơn sự giúp đỡ nhiệt tình của bạn .

Đây là bản vẽ giải thích file 2:

 

http://www.4shared.com/photo/7Xs5WoXM/giaithich.html

nhờ bạn xem giúp nhé.

file 2 mình muốn chon file ttrong thư mục ổ D: chứ không phải gõ trực tiếp thì phải làm thế nào .minh chua hiểu W 0 là gì cả

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác

Duy cũng quan tâm đề tài này sao.Bên mình ít có ai để ý lĩnh vực lập trình lắm.

Có khi làm vất vả quá ít ai để ý học

Cảm ơn em nhé.

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác

(setq File2 (open "D:\\FILE2.txt" "r"))

(Setq W 0); Thiết lập biến W = 0

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác

Mình thay vào thế này o được

(setq file2 (getfiled " Chonn File ghep" "d:/" "TXT" 4 ))

(setq file2 (open file2 "r"))

(setq w 0)

báo là :

 

error: too few arguments

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác

1.Trong lisp của bạn hoa35ktxd khi truy cập File thường phải trực tiếp truy cấp theo đường dẫn như sau

D:\\FILETEXT\\FILE1.txt.

Vậy trong trường hợp tên file file1,2,3 vẫn gửi nguyên tôi muốn sủ lý trong 1 thư mục bất kỳ .Như vậy D:\\ batky\\ file1.

Khi sử dụng tôi chỉ cần hỏi Nhập tên thư mục( Hoạc dùng hàm getfiled dẫn đến thư mục).

Như vậy tên thư mục phải trở thành 1 biến .

2.Tôi muốn sửa thành hàm getfiled tìm file2 ,thì phải làm bằng cách nào(làm chỉ được file1,file3...không được file 2)

Để làm điều đó thì tôi phải sửa chương trình trên như thế nào.

Cảm ơn sự quan tâm của các bạn.

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác
Duy cũng quan tâm đề tài này sao.Bên mình ít có ai để ý lĩnh vực lập trình lắm.

Có khi làm vất vả quá ít ai để ý học

Cảm ơn em nhé.

Bổ sung bác 1 ít kiến thức về file.

 

*Hàm getfiled làm xuất hiện hộp thoại chọn file Cú pháp:

(getfiled tieude tenfile duoi kieu) trong đó:

-tieude: là nội dung dòng chử xuất hiện trên tiêu đề hộp thoại.

-tenfile: là tên file hoặc đường dẩn mặc định xuất hiện sẵn trong hộp thoại.

-duoi: là phẩn mở rộng của file.

-kieu: là kiểu hộp thoại open hay save:

+1: Hộp thoại save.

+8: Hộp thoại open.

-Lưu ý các thông số trên điều phải được xác định, tham số nào không sử dụng phải gán cho nó giá trị rổng "".

-Dù hộp thoại là save hay open thì kết quả của hàm getfiled là một chuổi dạng đường dẩn, làm gì với nó do mình quyết định.

 

*Đọc dữ liệu từ file txt. Gồm 3 bước:

-Mở file (hàm open).

-Đọc dữ liệu từ file (hàm read-line).

-Đóng file (hàm close)

 

*Viết dữ liệu vào file txt. Gồm 3 bước:

-Mở file (hàm open).

-Viết dữ liệu vào file (hàm write-line).

-Đóng file (hàm close)

 

*Hàm Open dùng mở 1 file để đọc hoặc viết dữ liệu vào file. Cú pháp:

(open tenfile kieumo) trong đó:

-tenfile: là đường dẩn đầy đủ của file. Ví dụ “D:\\tailieukythuat\\duy.txt”

-kieumo: là ký tự viết thường “a” “r” “w” dùng xác định kiểu mở file:

+”a” mở file tenfile để chép dữ liệu nối tiếp vào cuối file. Nếu tìm thấy file con trỏ nằm cuối file, dữ liệu chép vào sẽ nối vào cuối file. Nếu không tìm thấy file tenfile sẽ được tạo mới, con trỏ nằm đầu file.

+”r” mở file tenfile để đọc dữ liệu. Con trỏ nằm tại vị trí dòng đầu tiên của file. Nếu không tìm thấy file này hàm trả về nil.

+”w” mở file tenfile để chép dữ liệu vào file này. Nếu tìm thấy dữ liệu trong file sẽ bị chép đè lên. Nếu không tìm thấy file tenfile sẽ được tạo mới, con trỏ nằm đầu file.

 

*Khi open 1 file bạn cấp cho nó 1 tên đại diện. Nhớ rằng file phải được đóng bằng hàm close trước khi thoát khỏi acad nếu không file có nguy cơ bị văng đi đâu đó không tìm ra.

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác

Tạo một tài khoản hoặc đăng nhập để nhận xét

Bạn cần phải là một thành viên để lại một bình luận

Tạo tài khoản

Đăng ký một tài khoản mới trong cộng đồng của chúng tôi. Điều đó dễ mà.

Đăng ký tài khoản mới

Đăng nhập

Bạn có sẵn sàng để tạo một tài khoản ? Đăng nhập tại đây.

Đăng nhập ngay

Đăng nhập để thực hiện theo  

×