Services & Resources / Wolfram Forums
MathGroup Archive
*Archive Index
*Ask about this page
*Print this page
*Give us feedback
*Sign up for the Wolfram Insider

MathGroup Archive 2005

[Date Index] [Thread Index] [Author Index]

Search the Archive

Re: Portable Notebooks and Filenames[]

  • To: mathgroup at
  • Subject: [mg57916] Re: Portable Notebooks and Filenames[]
  • From: "Stefan Linnik" <- at>
  • Date: Sun, 12 Jun 2005 04:34:44 -0400 (EDT)
  • References: <d8e4e7$gik$>
  • Sender: owner-wri-mathgroup at

If you use 'ToFileName' then forward or back slashes shouldn't be required
For eample:

path= ToFileName[{"c:","Install","celestia"}]
FileNames["*.zip", path]
:= c:\Install\celestia\
:= {c:\Install\celestia\}


:= c:\Install\celestia\*.zip
:= {c:\Install\celestia\}

Stefan Linnik

"frank" <frank at> wrote in message 
news:d8e4e7$gik$1 at
> Hi,
> in our group we are using Mathematica both on Windows and on Linux (and
> I'm about to convert a MacAddict to Mathematica).  However, we are
> facing one problem with external file names.
> It is possible to use
> In[1]:=
> SetDirectory["some/directory/subdirectory"];
> (from a syntax point of view; of course the beginning of the string will
> be different, like ~/netdrive vs. w:)
> On the other hand, this works only on Linux:
> In[2]:=FileNames["subdir/*"]
> while on Windows, only this construct works:
> In[3]:=FileNames["subdir\\*"]
> (\ needs to be escaped because \* or nearly any \<letter> combination
> has some meaning).
> This is weird - first because Windows understands the forward slash as a
> directory separator, and second because it means we have to do
> search-replace orgies when trying a notebook on a different OS.  This
> would not only happen in a preamble part, but we even have some
> functions that read all data in a subdirectory, for a list of
> subdirectories.
> Is there a way to write such expressions portable?  Is there, for
> example, an internal variable "directory separator" that could be used
> in this string?  Alternatively, if it's possible to replace \\ by / (and
> vice versa) by some string matching mechanism, we could write a function
> that does this if some boolean is set once in the notebook, or even
> depending on some internal variable that indicates the OS?
> Regards, Frank
> -- 
> Frank Küster
> Inst. f. Biochemie der Univ. Zürich
> Debian Developer

  • Prev by Date: Re: Solve
  • Next by Date: Re: Portable Notebooks and Filenames[]
  • Previous by thread: Portable Notebooks and Filenames[]
  • Next by thread: Re: Portable Notebooks and Filenames[]