Sign in now to see your channels and recommendations! Watch Queue Queue. This first edition was written for Lua 5.0. While still largely relevant for later versions, there are some differences. The fourth edition targets Lua 5.3 and is available at Amazon and other bookstores. By buying the book, you also help to support the Lua project.
The problem is that the stock Lua distribution (nearly) only includes features that are specified in standard C. Standard C makes no presumptions about there actually being a file system of any specific sort out there (or even an operating system, for that matter), so the os and io modules don't provide access information not available from the standard C library. If you were attempting to code in pure standard C, you would have the same issue.
There is a chance that you can learn whether the folder exists implicitly from an attempt to use it. If you expect it to exist and be writable to you, then create a temporary file there and if the that succeeds, the folder exists. If it fails, you might not be able to distinguish a non-existent folder from insufficient permissions, of course. By far the lightest-weight answer to getting a specific answer would be a thin binding to just those OS-specific function calls that provide the information you need.
Pre PBP3 the IDE was a seprate program (from our good friend Tim Box), so from PBP3 the IDE is part of Picbasic pro. Logged Note: Season & New Year Give Away. 3 year Holiday for Zero Posting. Download picbasic pro 3 torrent free shared files from DownloadJoy and other world's most popular shared hosts. Our filtering technology ensures that only latest picbasic pro 3 torrent files are listed.
If you can accept the module, then you can like do the binding in otherwise pure Lua. Simpler, but slightly heavier, is to accept Lua File System. It provides a portable module that supports most things one might want to learn about files and the file system. Well, the 5.1 reference manual doesn't have anything in, but if you use, you get for precisely what you've explained. If you can afford to fiddle around a bit, or if you know what OS you'll be running on, you might get away with the standard os library's os.execute with some system call that will identify if the file exists. Even better than os.execute might be os.rename: os.rename(oldname, newname) Renames file named oldname to newname.
If this function fails, it returns nil, plus a string describing the error. You could try setting oldname and newname the same -- you might not have write permissions, though, so it might fail because you can't write, even though you can read.
In that event, you'd have to parse the returned error string and deduce whether you could write, or you'd have to just try executing your function that needs an existing file, and wrap it in a pcall. I use these (but i actually check for the error): require('lfs') -- no function checks for errors.