xiaocainiao 发表于 2024-10-4 20:04:43

求教!字符串"07"转换成07应该如何操作?

(atoi "07")


求教一下各位大神!
字符串"07"想转成07应该如何操作?

我用atoi和read函数转换的结果都是7、自动去掉0
我想原数据转换不知道如何操作了

自贡黄明儒 发表于 2024-10-4 20:38:46

用字符长度判断

自贡黄明儒 发表于 2024-10-8 09:34:07

本帖最后由 自贡黄明儒 于 2024-10-8 13:18 编辑

xiaocainiao 发表于 2024-10-8 09:20
谢谢!现在已经改用字符串了、不转了
我也写了文件时间比较,一直没写好。你怎么写的,让我们学习一下。
;;TimeCompa,返回0 1,表示菜单文件是最新的,不需要更新
;;(setq MnuTime '(2017 7 25 8 48 8 0))
;;(setq fileTime '(2017 7 28 20 12 49 715))
(defun TimeCompa (MnuTime fileTime / FLAG A B)
    (setq MnuTime(cons(car MnuTime) (cons (cadr MnuTime) (cdddr MnuTime))))
    (setq fileTime(cons(car fileTime) (cons (cadr fileTime) (cdddr fileTime))))
    (while (and(setq a (car MnuTime))
    (setq b (car fileTime))
    (cond ((equal a b) (setq Flag 0) T)
          ((> a b) (setq Flag 1) nil)
          (T (setq Flag -1) nil)
    )
   )
      (setq MnuTime (cdr MnuTime))
      (setq fileTime (cdr fileTime))
    )
    FLAG
)

xiaocainiao 发表于 2024-10-4 20:34:17

你有种再说一遍 发表于 2024-10-4 20:24
你说说什么地方会需要?

vl-file-systime 我在用这个函数获取文件修改时间、
得到(1998 4 3 8 10 6 52)、表中的数据有单有双、
我想要比较两个文件的时间、对文件名进行排序、
刚刚想到的方法是将年后面的数全变成两位、
然后组成"1998040308100652"这样的字符串,
再转成实数进行比较、
刚发完就想起了好像不用变双数、就能直接合成一个字符串,
不过遇到了就来问一下、万一以后用上呢

kozmosovia 发表于 2024-10-4 20:06:25

本帖最后由 kozmosovia 于 2024-10-4 20:07 编辑

07==7, 数字前面的0是没有存在的作用的,你可以在代码里写,但是转成机器的返回结果,直接就去掉前面没有用的0了

xiaocainiao 发表于 2024-10-4 20:18:15

kozmosovia 发表于 2024-10-4 20:06
07==7, 数字前面的0是没有存在的作用的,你可以在代码里写,但是转成机器的返回结果,直接就去掉前面没有用 ...

主要我是需要用到这个0

你有种再说一遍 发表于 2024-10-4 20:24:52

xiaocainiao 发表于 2024-10-4 20:18
主要我是需要用到这个0

你说说什么地方会需要?

xiaocainiao 发表于 2024-10-4 20:43:23

自贡黄明儒 发表于 2024-10-4 20:38
用字符长度判断

我现在就是判断这个数是不是小于10、
如果小于10、就转成字符串前面加个0、大于10就用原来的数据、
不过感觉这种方法太笨了、
(1998 4 3 8 10 6 52) (2020 5 3 8 10 6 52)
我想要实现的其实就是对上面这种格式的表进行排序、
表中内容就是文件修改时间、也就是年月日那些

xyp1964 发表于 2024-10-4 22:40:27

xiaocainiao 发表于 2024-10-4 20:43
我现在就是判断这个数是不是小于10、
如果小于10、就转成字符串前面加个0、大于10就用原来的数据、
不 ...

都转成字符串比较:
("1998" "04" "03" "08" "10" "06" "52")
("2020" "05" "03" "08" "10" "06" "52")

qazxswk 发表于 2024-10-5 01:28:55

你有种再说一遍 发表于 2024-10-4 20:24
你说说什么地方会需要?

有时候编序号需要。

你有种再说一遍 发表于 2024-10-5 01:40:25

qazxswk 发表于 2024-10-5 01:28
有时候编序号需要。

没有任何地方需要,数值只有比较作用,显示是字符串
页: [1] 2 3
查看完整版本: 求教!字符串"07"转换成07应该如何操作?