當前位置:首頁 » 文件管理 » lua創建文件夾

lua創建文件夾

發布時間: 2022-12-12 22:55:42

① LUA怎麼像C語言一樣編譯生成可執行文件

下載源代碼,解壓

解壓後,包含文件:
1、doc 文件夾,lua的更新說明,網頁格式
2、src 文件夾,lua的源文件,C語言實現
3、Makefile , 編譯用配置文件,我們這里就不用它了
4、README , 不用我說了吧,就一說明文件,我們也用不著

進入src文件夾,新建一個文本文件。並改名為vslua.bat,提示是否更改後綴名,選擇是並點擊。

右鍵我們建立的vslua.bat文件,以記事本打開

編寫如圖代碼,為了鍛煉大家的動手能力,加深理解,我就直接上圖不打文字。反正一定能看清的。記得編寫後保存哦!

到開始菜單選擇vs的開發人員命令提示工具。

在命令工具中輸入:
1、「cd x:\你的src文件夾路徑\src」[不包含引號],回車
2、「vslua.bat」 回車
等待執行結束。如果不錯的話,你到src上級目錄就能發現新生成了一個bin文件夾。文件夾裡面放的就是生成好的exe、lib、dll。

最後測試一下新生成的lua.exe。

② 如何在Windows平台使用VS搭建C++/Lua的開發環境

環境

  1. Windows 8.1

  2. VS2012

  3. Lua5.2.3

如何搭建

1.生成Lua靜態庫

(1)下載lua src。

最新版本是5.2.3。下載地址。

(2)新建VS Win32控制台應用程序,取名為Lua。在應用程序設置中選擇應用程序類型為靜態庫,附加選項中取消預編譯頭的勾選。

③ Lua常用的文件操作

一、基本的文件讀寫

(1) io.open

功能:按指定的模式打開一個文件,成功則返迴文件句柄,失敗則返回nil+錯誤信息

file = io.open (filename [, mode])

mode 的值有:

r  以只讀方式打開文件,該文件必須存在。

w  打開只寫文件,若文件存在則文件長度清為0,即該文件內容會消失。若文件不存在則建立該文件。

a   以附加的方式打開只寫文件。若文件不存在,則會建立該文件,如果文件存在,寫入的數據會被加到文件尾,即文件原先的內容會被保留。(EOF符保留)

r+  以可讀寫方式打開文件,該文件必須存在。

w+  打開可讀寫文件,若文件存在則文件長度清為零,即該文件內容會消失。若文件不存在則建立該文件。

a+   與a類似,但此文件可讀可寫

b   二進制模式,如果文件是二進制文件,可以加上b

+   號表示對文件既可以讀也可以寫

(2)  file:write(...)

功能:按指定的參數格式輸出文件內容,參數必須為字元或數字,若要輸出其它值,則需通過tostring或string.format進行轉換

(3)  file:close()

功能:關閉文件,我抽U盤才懶得'安全刪除硬體',一般都直接拔了.這個命令也一樣,反正lua有垃圾自動回收........

(4) io.lines ([filename])

功能:打開指定的文件filename為讀模式並返回一個迭代函數,每次調用將獲得文件中的一行內容,當到文件尾時,將返回nil,並自動關閉文件

(5) io.popen ([prog [, mode]])

功能:開始程序prog於額外的進程,並返回用於prog的文件句柄(並不支持所有的系統平台)

二、常用文件操作

(1)判斷文件是否存在

function checkFileExist(path)

        local file = io.open(path, "rb")

        if file then file:close() end

        return file ~= nil

 end

(2)判斷文件夾是否存在()

os.execute("cd "..dirPath)

返回值為0便是存在,不為0時表示不存在

(3)創建文件夾

os.execute("mkdir "..dirPath)

(4)刪除文件

os.remove(filepath)

eg:創建多層文件夾

Configs.debugFilePath = "E:/test1/test2/test3/test4/test.txt"

function checkDirExist()

    local dirlist = string.split(Configs.debugFilePath,"/")

    local filenamelen = string.len(dirlist[#dirlist])

    local dirpath = string.sub(Configs.debugFilePath,1,string.len(Configs.debugFilePath)-filenamelen-1)

    local path_tb={}

    local new_path=""

    -- 分割路徑保存到table

    for s in string.gmatch(dirpath,"([^'/']+)") do

        if s~=nil then

            table.insert(path_tb,s)

        end

    end

    -- 遍歷並拼接路徑檢測是否存在,不存在則新建

    for k,v in ipairs(path_tb) do

        if k==1 then

            new_path=v

        else

            new_path=new_path.."\\"..v

        end   

        if os.execute("cd "..new_path) ~= 0 then

            os.execute("mkdir "..new_path)

        end

    end

end

(5)獲得文件夾下的所有文件路徑(windows)

io.popen("dir path /b /s")

eg:

local dirinfo= io.popen("dir path /b /s")

local all = dirinfo:read("*all")

④ lua 創建文件和文件夾

--創建名字為123的文件夾
os.execute("md 123")

--創建名字為123.txt 內容為456的文件
local file = io.open("123.txt","w")
file:write("456")
file:close()

熱點內容
arm交叉編譯環境搭建 發布:2025-09-19 21:17:54 瀏覽:301
java讀取文件路徑 發布:2025-09-19 21:11:09 瀏覽:496
c語言空讀 發布:2025-09-19 21:05:20 瀏覽:417
linux虛擬機查看 發布:2025-09-19 20:47:04 瀏覽:323
資料庫存儲大量文字 發布:2025-09-19 20:45:29 瀏覽:178
散列的演算法 發布:2025-09-19 20:43:54 瀏覽:127
有網友上傳 發布:2025-09-19 20:34:57 瀏覽:516
php和javascript 發布:2025-09-19 19:42:11 瀏覽:286
求代數c語言 發布:2025-09-19 19:37:49 瀏覽:716
java循環列印 發布:2025-09-19 19:01:34 瀏覽:71