FCMhXrJ 发表于 2024-4-26 15:50:08

记事本里的多行怎样倒序排列?

可以编写代码把记事本里的多行倒序排列吗?

比如,原来记事本里面是如下数据:

13,1925.319,1383.785
12,1868.955,1383.259
11,1817.331,1382.558
10,1927.777,1402.364
9,1873.511,1399.624
8,1818.94,1399.624
7,1928.196,1420.402
6,1871.492,1420.402
5,1820.444,1418.493

想要弄成如下:
5,1820.444,1418.493
6,1871.492,1420.402
7,1928.196,1420.402
8,1818.94,1399.624
9,1873.511,1399.624
10,1927.777,1402.364
11,1817.331,1382.558
12,1868.955,1383.259
13,1925.319,1383.785
可以编写一个LSP程序实现吗?

咏郡 发表于 2024-4-26 20:30:58

(defun c:ww(/ f lst x)
        (setq f(open "d:/123.txt" "r"))
        (while (setq x (read-line f))
                (setq lst (append lst (list x)))
        )
        (close f)
        (setq lst(reverse lst))
        (setq f(open "d:/123-1.txt" "w"))
        (foreach x lst (write-line x f))
        (close f)
)

guosheyang 发表于 2024-4-26 21:15:39

本帖最后由 guosheyang 于 2024-4-26 21:34 编辑

可以适当改下
(defun c:ww(/ f lst x)
(setq f0(getfiled "请选择文本文件" "" "txt" 8))
(setq f(open f0 "r"))
(while (setq x (read-line f))
      (setq lst (cons x lst))
)
(close f)
(setq f(open f0 "w"))
(foreach x lst (write-line x f))
(close f)
)

FCMhXrJ 发表于 2024-4-26 20:57:11

咏郡 发表于 2024-4-26 20:30
(defun c:ww(/ f lst x)
        (setq f(open "d:/123.txt" "r"))
        (while (setq x (read-line f))


俺太穷了,不然就给您明经币了:lol

自贡黄明儒 发表于 2024-4-26 16:03:25

(setq L (cons(read-line fn) L))自然就倒了,然后写回去。

你有种再说一遍 发表于 2024-4-26 16:19:00

如果是十亿数据,那还有一门技术叫外排序.
可以B站一下,有人教

FCMhXrJ 发表于 2024-4-26 16:19:51

自贡黄明儒 发表于 2024-4-26 16:03
(setq L (cons(read-line fn) L))自然就倒了,然后写回去。

cons函数是把一个元素与一个表接合起来吧,怎样使用LSP实现倒序呀?

自贡黄明儒 发表于 2024-4-26 16:22:40

FCMhXrJ 发表于 2024-4-26 16:19
cons函数是把一个元素与一个表接合起来吧,怎样使用LSP实现倒序呀?

(setq L (cons(list(read-line fn)) L))

FCMhXrJ 发表于 2024-4-26 16:33:20

自贡黄明儒 发表于 2024-4-26 16:22
(setq L (cons(list(read-line fn)) L))

大佬,还是不能实现倒序呀

ssyfeng 发表于 2024-4-26 16:40:28

先读取数据,倒序,再重新写入新数据

FCMhXrJ 发表于 2024-4-26 16:45:14

ssyfeng 发表于 2024-4-26 16:40
先读取数据,倒序,再重新写入新数据

具体使用什么代码编写倒序呀?

FCMhXrJ 发表于 2024-4-26 16:52:25

ssyfeng 发表于 2024-4-26 16:40
先读取数据,倒序,再重新写入新数据

大佬,因为我不懂这样的倒序怎样写代码,所以才求助的呀

你有种再说一遍 发表于 2024-4-26 16:53:23

FCMhXrJ 发表于 2024-4-26 16:45
具体使用什么代码编写倒序呀?

reverse翻转列表
页: [1] 2 3
查看完整版本: 记事本里的多行怎样倒序排列?