File.open("testfile", "r") do |aFile|
# ... process the file
end
Advantage of this notation is that file is automatically closed when do
loop terminates -- maybe by an exception with Process.exit.
But how do I test in this notation that the file with name "testfile"
really exits (and opening was successful). In an multi-tasking
environment another process may delete the file just before this
statement is executed.
Or in other words: I want to print a text like "File with filename
"testfile" does not exist" when opening failed.
But how do I test in this notation that the file with name "testfile"
really exits (and opening was successful). In an multi-tasking
environment another process may delete the file just before this
statement is executed.
If you want to completely avoid race conditions, you don't check - you just do
and then recover from eventual errors (i.e. you rescue the exception).
File.open("testfile", "r") do |aFile| # ... process the file
end
Advantage of this notation is that file is automatically closed when do
loop terminates -- maybe by an exception with Process.exit.
But how do I test in this notation that the file with name "testfile"
really exits (and opening was successful). In an multi-tasking
environment another process may delete the file just before this
statement is executed.
Or in other words: I want to print a text like "File with filename
"testfile" does not exist" when opening failed.
Best regards
Stefan Salewski
--
Chanoch (Ken) Bloom. PhD candidate. Linguistic Cognition Laboratory.
Department of Computer Science. Illinois Institute of Technology. http://www.iit.edu/~kbloom1/