The Math Forum

Search All of the Math Forum:

Views expressed in these public forums are not endorsed by NCTM or The Math Forum.

Math Forum » Discussions » Inactive » comp.soft-sys.math.mathematica

Notice: We are no longer accepting new posts, but the forums will continue to be readable.

Topic: Default path for opening files
Replies: 14   Last Post: Jul 1, 2012 2:13 AM

Advanced Search

Back to Topic List Back to Topic List Jump to Tree View Jump to Tree View   Messages: [ Previous | Next ]
E. Martin-Serrano

Posts: 114
Registered: 9/5/08
Re: Default path for opening files
Posted: Jun 26, 2012 4:47 AM
  Click to see the message monospaced in plain text Plain Text   Click to reply to this topic Reply


Please, could anyone explain why the 'In[5]:= SetDirectory[directory]'
fails ?

In[1]:= DirectoryStack[]

Out[1]= {}

In[2]:= directory = FileNameJoin[{"C:", "fbuttontofileTest"}]

Out[2]= "C:\\fbuttontofileTest"

In[3]:= directory

Out[3]= "C:\\fbuttontofileTest"

In[4]:= Head@%

Out[4]= String

In[5]:= SetDirectory[directory]

Out[5]= $Failed

In[6]:= DirectoryStack[]

Out[6]= {}

The directory


Does exist in the installation (windows7 MathV8.0.1), although it isn't a
standard Mathematica directory there is not warning on this in the Help
documentation as far as I know.

Best regards.

E. Martin-Serrano

-----Mensaje original-----
De: awnl []
Enviado el: lunes, 25 de junio de 2012 10:01
Asunto: Re: Default path for opening files


> Whenever I tried to open a file from my Mathematica directory (with
> rather deep structure), I have to start with "~/Documents/" (I am
> using Mac). I searched the help and I found that this directory is
> coded in the variable "$UserDocumentsDirectory". OK. So I tried to set
> this variable to the root of my Mathematica directory, but I found it
> protected. Then I setup my local "init.m" file. I unprotect it, set
> it, and protect it, in the init.m file. (This is another story though.
> I searched the web for half a day and I do not see any example or
> instruction, official or by other users, on how people can compose
> their own init.m file.) However, nothing is changed.

There are ways to change some of these "fixed" pathes with environment
variables or arguments to the executable before you start mathematica. I
don't know whether $UserDocumentsDirectory is amongst them, but don't think
so. But I don't think this is what you need. Why don't you just use the full
file path? You can define:

myRootDirectory = "/path/to/my/data"

and then use something like:


> When my data files grow in number, I decided that I should use the
> "FileNameSetter" interface in my NB to pick the file on the fly. That
> way I do not have to modify the code ( filename=xxxx ...., blablabla )
> for each datafile.

that seems reasonable...

> However, I found the same problem. In the "FileNameSetter" function,
> there is not an option to set the default starting path. (Or I am just
> too stupid to use electronic documentation so that I do not find the
> solution?) Everything starts with "~/Documents", although since the
> second time the directory tree will be expanded like what I saw the
> previous time (this is the case in Mac. I did not try under Windows or
> Linux).
> Is there any smarter way to do this? Look forward to your helpful
> comments.

If you want FileNameSetter to start in a certain directory, give it that
directory as a first argument. If you want a preselected filename, give a
full path name and the dialog will open in the directory where that file
lives (provided the directory does exist). Seems pretty straightforward to
me, although it admittedly isn't very clear from the documentation. So this:

FileNameSetter[FileNameJoin[{$HomeDirectory, "Desktop"}]]

will start the file browseron your desktop, something like this:

filename = "/path/to/my/data/*.m"
FileNameSetter[Dynamic[filename], "Open"]

will open the file browser in /path/to/my/data and use a filter for .m files
but have no "reasonable" filename selected. There are additionaly
possibilities to further refine the filter settings, which you can get from
the documentation.

I know this works for Windows and Linux and have also used this on a Mac,
but honestly don't exactly remember what the file open dialog will actually
show, but I would be very surprised if that wouldn't do something reasonable
on a Mac.



Point your RSS reader here for a feed of the latest messages in this topic.

[Privacy Policy] [Terms of Use]

© The Math Forum at NCTM 1994-2018. All Rights Reserved.