It is quite simple to bring a file dialog to pickup a file outside Max:
filename = getOpenFileName if filename != undefined then ( print filename )
filename = getSaveFileName
essentially does the same thing but confirm button label is “Save” rather than “Open”.
The file dialog can have more options like:
filename = getSaveFileName \ caption:"Title of the Dialog Window" \ types:"Data(*.txt)|*.txt|All|*.*|" \ filename:(sysinfo.currentdir + @"\untitled.m")