zoukankan      html  css  js  c++  java
  • Delphi第九天学习笔记

    Delphi中PChar转换到string是自动进行的,没必要用StrPas
    '#0'终结符:读到#0后就不会往后查看了
    PChar类型可以看成一个字符数组指针,类似于C语音中的数组指针
    StrPCopy(P, str):将str的内容复制给P(PChar)
    StrCopy(P1, P2):把P2指向的内容复制给P1
    P1 := P2;将P2的指向的地址赋值给P1
    Inc(P)等于P + 1;
    PChar写操作有三种方式:1,GetMem申请内存;2,指向一个用SetLength预设长度的string;3,指向一个数组


    有序类型的序号:
    Pred:前一个序号
    Ord:自己的序号
    Succ:后一个的序号


    日期类型实际上是一个Double类型,意义是从1989年12月30日开始的天数。
    整数部分表示天数,小数部分表示时间占一天的比值

    日期类型:TDate,’2021-09-11’
    时间类型:TTime, ‘23:59:59 999’
    日期时间类型:TDateTime ‘2021-09-11 23:59:59 999’

    获取当前时间:
    Date:获取当前的日期部分。'YYYY-MM-dd'
    Time:获取当前的时间部分。'hh-mm-ss zzz'
    Now:获取当前的日期和时间

    解码日期(Now是日期类型,其它参数为Word类型):
    DecodeDate(Now, Year, Month, day)
    DecodeTime(Now, Hour, Minute,second. MillionSecond)
    编码日期(都是Integer类型):
    EncodeDate(year, month, day);
    EncodeTime(....)

    IncMonth:返回日期增加一个月的日期
    其它类似的Inc需要引用System.DateUtils单元

    StartofYear/Month/Day..开始时间.
    EndOfYear/Month/Day...结束时间(毫秒部分精确到999,但SQL中毫秒部分为997)

    DateUtils中的日期函数 :
    YearOf
    MonthOf
    DayOf

    获取时间间隔:Years/Months/Days/Hours/Minutes/Seconds/MilliSecondsBetween
    获取毫秒间隔是准确的。
    其它的都用到了Div来计算
    Trunc(Now) = DaysBetween(Now, 0)


    StrToIntDef等有默认值的转换可以用try strToInt.. Except ... end;替换

    Str(Num[, Width[, Decimal]]; var Str);将数值类型Num转换为String并保存到Str中。其中Width长度、Decimal精度是可选的。
    Val(Str, var Num, Index;):将Str中前面的合法数值字符串转化为数值保存在Num中,如果有不合法的字符,则用Index保存第一个不合法字符的位置(第Index个)。


    文件函数:
    FileExists(FilePath):判断文件是否存在
    DeleteFile(FilePath): 删除文件,成功则返回True
    Extract函数:解析文件全路径,返回某部分(例C:Path/Hello/a.txt)
    ExtractFileName(FilePath):返回文件名(含扩展名),如a.txt
    ExtractExt(FilePath):返回文件扩展名(包含.),如.txt
    ExtractFilePath(FilePath):返回该文件所在文件夹路径(含/),如C:Path/Hello/
    ExtractFileDir(FilePath):返回该文件所在文件夹路径(不含/),如C:Path/Hello
    ExtractFileDrive(FilePath):返回该文件所在的驱动器盘符,如C
    ChangeFileExt(FilePath):返回修改扩展名后的文件名(没有修改文件实体)
    ReNameFile(FilePath):修改文件的扩展名
    例: ReNameFile(FilePath, ChangeFileExt(FilePath, ‘.Doc’));


    设有一个指针P指向一个对象O,P.Free只是将O释放了,但P依旧指向O原本所在的空间,此时P成为非法指针,很容易报错。FreeAndNil(P)则是将O释放并将P重置为Nil,是安全的。

    Assigned()判断变量是否为空

  • 相关阅读:
    jdbc连接池中c3p0的配置文件的详解以及在在java中如何使用
    idea导入myeclipes项目、运行项目
    java中身份证号和的银行卡的深度校验
    springBoot的搭建使用记录
    java分模块项目在idea中使用maven打包失败(ps:maven常用到的命令)
    js获取当前页面相关信息
    mybatis使用中的记录
    tomcat服务的启动与隐藏启动(win)
    cmd命令关闭占用程序的端口
    ping端口是否开放(windows,macos,linux)
  • 原文地址:https://www.cnblogs.com/wuchangxing/p/15262101.html
Copyright © 2011-2022 走看看