testFs.lua 3.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102
  1. --- 模块功能:文件操作功能测试.
  2. -- @author openLuat
  3. -- @module fs.testFs
  4. -- @license MIT
  5. -- @copyright openLuat
  6. -- @release 2018.03.27
  7. module(...,package.seeall)
  8. local USER_DIR_PATH = "/user_dir"
  9. --[[该demo提供四种接口,第一种readfile(filename)读文件,第二种writevala(filename,value),写文件内容,附加模式,
  10. 第三种function writevalw(filename,value),写文件内容,覆盖模式,第四种deletefile(filename),删除文件。--]]
  11. --[[
  12. 函数名:readfile(filename)
  13. 功能:打开所输入文件名的文件,并输出储存在里面额内容
  14. 参数:文件名
  15. 返回值:无 ]]
  16. local function readfile(filename)--打开指定文件并输出内容
  17. local filehandle=io.open(filename,"r")--第一个参数是文件名,第二个是打开方式,'r'读模式,'w'写模式,对数据进行覆盖,'a'附加模式,'b'加在模式后面表示以二进制形式打开
  18. if filehandle then --判断文件是否存在
  19. local fileval=filehandle:read("*all")--读出文件内容
  20. if fileval then
  21. print(fileval) --如果文件存在,打印文件内容
  22. filehandle:close()--关闭文件
  23. else
  24. print("文件为空")--文件不存在
  25. end
  26. else
  27. print("文件不存在或文件输入格式不正确") --打开失败
  28. end
  29. end
  30. --[[
  31. 函数名: writevala(filename,value)
  32. 功能:向输入的文件中添加内容,内容附加在原文件内容之后
  33. 参数:第一个文件名,第二个需要添加的内容
  34. 返回值:无 --]]
  35. local function writevala(filename,value)--在指定文件中添加内容,函数名最后一位就是打开的模式
  36. local filehandle = io.open(filename,"a+")--第一个参数是文件名,后一个是打开模式'r'读模式,'w'写模式,对数据进行覆盖,'a'附加模式,'b'加在模式后面表示以二进制形式打开
  37. if filehandle then
  38. filehandle:write(value)--写入要写入的内容
  39. filehandle:close()
  40. else
  41. print("文件不存在或文件输入格式不正确") --打开失败
  42. end
  43. end
  44. --[[
  45. 函数名:writevalw(filename,value)
  46. 功能:向输入文件中添加内容,新添加的内容会覆盖掉原文件中的内容
  47. 参数:同上
  48. 返回值:无 --]]
  49. local function writevalw(filename,value)--在指定文件中添加内容
  50. local filehandle = io.open(filename,"w")--第一个参数是文件名,后一个是打开模式'r'读模式,'w'写模式,对数据进行覆盖,'a'附加模式,'b'加在模式后面表示以二进制形式打开
  51. if filehandle then
  52. filehandle:write(value)--写入要写入的内容
  53. filehandle:close()
  54. else
  55. print("文件不存在或文件输入格式不正确") --打开失败
  56. end
  57. end
  58. --[[函数名:deletefile(filename)
  59. 功能:删除指定文件
  60. 参数:文件名
  61. 返回值:无 --]]
  62. local function deletefile(filename)
  63. os.remove(filename)
  64. end
  65. --打印文件系统的剩余空间
  66. print("get_fs_free_size: "..rtos.get_fs_free_size().." Bytes")
  67. sys.timerLoopStart(function() print("get_fs_free_size: "..rtos.get_fs_free_size().." Bytes") end,5000)
  68. --成功创建一个目录(目录已存在,也返回true表示创建成功)
  69. if rtos.make_dir(USER_DIR_PATH) then
  70. log.info("testFs.readfile")
  71. readfile(USER_DIR_PATH.."/3.txt")
  72. log.info("testFs.writevala")
  73. writevala(USER_DIR_PATH.."/3.txt","great")
  74. log.info("testFs.readfile")
  75. readfile(USER_DIR_PATH.."/3.txt")
  76. log.info("testFs.writevalw")
  77. writevalw(USER_DIR_PATH.."/3.txt","great")
  78. log.info("testFs.readfile")
  79. readfile(USER_DIR_PATH.."/3.txt")
  80. log.info("testFs.deletefile")
  81. deletefile(USER_DIR_PATH.."/3.txt")
  82. log.info("testFs.readfile")
  83. readfile(USER_DIR_PATH.."/3.txt")
  84. end