I have a function called createPathTree_utils_ which creates a whole path no matter how deep it is but does not complain if anything already exists along the way. It is probably not the best way to do it, but it works for me. I find it useful, but maybe there is already something like this somewhere in one of the many addons/libraries which I have not come across yet?
example: createPathTree_utils_ '/tmp/dir1/dir2/' coclass 'utils' typecheck =: =3!:0 isboxed =: 32&typecheck_utils_ boxifopen =: <^:(-...@isboxed_utils_) exists =: 0&<@#@(1!:0)@boxifopen_utils_ NB. does file or directory y exist newdir =: 1!:5...@boxifopen_utils_ NB. create new directory y createPath =: newdir_utils_ ^:(-.@:exists_utils_@:(_1&}.)) NB. create a path if it does not exist createPathTree =: ( (createPath_utils_ f.)@ ,&'/' @ ; @ ]\ @: (_1&}.) @: (<;.1) ) :: 0: 2009/11/24 Dan Bron <[email protected]>: > I've just started playing with JDB. I've found a minor bug: > > load'data/jdb' > > hf=: Open_jdb_ 'NONEXISTANTDIRECTORY' > |domain error: throw > | throw msg > > This isn't a very helpful error message; the problem is msg is boxed, and > it should be literal. The cause is line 240 of ~addons\data\jdb\jdb.ijs : > > msg=. (0<#y) { 'Directory not given';'Not a directory: ',dbf > > the { should be {:: or a > should follow the =. (or throw should > accept boxed args). > > IMO, it would be better to create a non-existant directory. But that's a > design question. > > -Dan > > > ---------------------------------------------------------------------- > For information about J forums see http://www.jsoftware.com/forums.htm > ---------------------------------------------------------------------- For information about J forums see http://www.jsoftware.com/forums.htm
