dimension laArray[1]
clear
lcString = "1 \n\n\n2\n4\n5"
? alines(laArray, strtran(lcString, "\n", chr(13)))
? ajoin(@laArray, "|")
? tokenize(@laArray, lcString, "\n")
? ajoin(@laArray, "|")
lcString = "1 \n\n\n\n2\n4\n5\n"
? alines(laArray, strtran(lcString, "\n", chr(13)))
? ajoin(@laArray, "|")
? tokenize(@laArray, lcString, "\n")
? ajoin(@laArray, "|")
lcString = "1 \n\n\n\n2\n4\n5\n\n\n\n"
? alines(laArray, strtran(lcString, "\n", chr(13)))
? ajoin(@laArray, "|")
? tokenize(@laArray, lcString, "\n")
? ajoin(@laArray, "|")
dimension laArray[6]
laArray[1] = "string"
laArray[2] = 4.567
laArray[3] = 8
laArray[4] = .f.
laArray[5] = datetime()
laArray[6] = date()
? ajointrans(@laArray, "|")
return
function tokenize (taArray, tcString, tcDelimiter)
if vartype(tcDelimiter) != 'C'
tcDelimiter = " "
endif
local lnCount, i
#ifdef USE_ALINES
if version(5) >= 700
lnCount = alines(taArray, tcString, tcDelimiter)
else
lnCount = alines(taArray, strtran(tcString, tcDelimiter, chr(13)))
endif
#else
local lcTwoDelimiters, lnDelimiterSize
lcTwoDelimiters = tcDelimiter + tcDelimiter
lnDelimiterSize = len(tcDelimiter)
tcString = strtran(tcString, lcTwoDelimiters, tcDelimiter)
lnCount = occurs(tcDelimiter, tcString)
if lnCount < 1
dimension taArray[1]
taArray[1] = tcString
lnCount = 1
else
local lnDelimiter, lcTempString, i
dimension taArray[lnCount]
lcTempString = tcString
for i = 1 to lnCount
lnDelimiter = at(tcDelimiter, lcTempString)
taArray[i] = left(lcTempString, lnDelimiter - 1)
lcTempString = substr(lcTempString, lnDelimiter + lnDelimiterSize)
endfor
if !(lcTempString == "")
lnCount = lnCount + 1
dimension taArray[lnCount]
taArray[lnCount] = lcTempString
endif
endif
#endif
return lnCount
endfunc
function ajoin (taArray, tcDelimiter)
if vartype(tcDelimiter) != 'C'
tcDelimiter = " "
endif
local lcString, i
lcString = taArray[1]
for i = 2 to alen(taArray)
lcString = lcString + tcDelimiter + taArray[i]
endfor
return lcString
endfunc
function ajoinTrans (taArray, tcDelimiter)
if vartype(tcDelimiter) != 'C'
tcDelimiter = " "
endif
local lcString, i
lcString = transform(taArray[1])
for i = 2 to alen(taArray)
lcString = lcString + tcDelimiter + transform(taArray[i])
endfor
return lcString
endfunc