1 | #pragma rtGlobals=1 // Use modern global access method. |
---|
2 | |
---|
3 | Proc WriteModelData(xwave,ywave,delim,term) |
---|
4 | String xwave,ywave,delim,term |
---|
5 | Prompt xwave,"X data",popup,WaveList("*",";","") |
---|
6 | Prompt ywave,"y data",popup,WaveList("*",";","") |
---|
7 | Prompt delim,"delimeter",popup,"tab;space;" |
---|
8 | Prompt term,"line termination",popup,"CR;LF;CRLF;" |
---|
9 | |
---|
10 | //Print xwave, ywave, delim, term |
---|
11 | |
---|
12 | fWriteModelData($xwave,$ywave,delim,term) |
---|
13 | |
---|
14 | End |
---|
15 | |
---|
16 | Function fWriteModelData(xwave,ywave,delim,term) |
---|
17 | Wave xwave,ywave |
---|
18 | String delim,term |
---|
19 | |
---|
20 | String formatStr="",fullpath="" |
---|
21 | Variable refnum |
---|
22 | //setup delimeter and terminator choices |
---|
23 | If(cmpstr(delim,"tab")==0) |
---|
24 | //tab-delimeted |
---|
25 | formatStr="%15.4g\t%15.4g" |
---|
26 | else |
---|
27 | //use 3 spaces |
---|
28 | formatStr="%15.4g %15.4g" |
---|
29 | Endif |
---|
30 | If(cmpstr(term,"CR")==0) |
---|
31 | formatStr += "\r" |
---|
32 | Endif |
---|
33 | If(cmpstr(term,"LF")==0) |
---|
34 | formatStr += "\n" |
---|
35 | Endif |
---|
36 | If(cmpstr(term,"CRLF")==0) |
---|
37 | formatStr += "\r\n" |
---|
38 | Endif |
---|
39 | |
---|
40 | Open/D refnum as NameofWave(ywave)+".txt" //doesn't open file |
---|
41 | If(cmpstr(S_filename,"")==0) |
---|
42 | //user cancel, don't write out a file |
---|
43 | Close/A |
---|
44 | Abort "no data file was written" |
---|
45 | Endif |
---|
46 | fullpath=S_filename |
---|
47 | Open refnum as fullpath |
---|
48 | |
---|
49 | fprintf refnum,"Model data created %s\r\n",(date()+" "+time()) |
---|
50 | wfprintf refnum,formatStr,xwave,ywave |
---|
51 | Close refnum |
---|
52 | return(0) |
---|
53 | End |
---|