[Qgis-developer] [SOLVED] QGis and string replacement
Michele Mammini
mamminim at yahoo.it
Tue Feb 2 05:33:10 EST 2010
It's easy to assign the result of the replece to the same variable....
szLine = szLine.replace(szToSearch, szToReplace)
Hi all,
I have another problem related to the string replacement in QGis.
I want to read a QGis Style file at runtime and write in another file
some modifications.
If I try to execute the single command in Python Console everything
is working and my line is changed, while if I execute it in my plugin
nothing happen.
Do you know where i made a mistake?
This is a part of the file:
...
<customColorRamp>
<colorRampType>LINEAR</colorRampType>
<colorRampEntry red="0" blue="143" value="1.000000" green="0"
label="Color entry 1" />
<colorRampEntry red="0" blue="159" value="2.000000" green="0"
label="Color entry 2" />
<colorRampEntry red="0" blue="175" value="3.000000" green="0"
label="Color entry 3" />
...
This is what i exec in Python Console:
>>> fIn =
open("C:\\Users\\Michele\\.qgis\\python\\plugins\\KitICT\\style\\colormap64.qml","r")
...
>>> szLine = fIn.readline()
>>> delta = (54.0-42.0+1)/64.0
>>> i=0
>>> szToSearch = "value=\"" + str(i+1) + ".000000\""
>>> szToReplace = "value=\"" + str(round(42.0 + i*delta,6)) + "\""
>>> szLine.replace(szToSearch, szToReplace)
<colorRampEntry red="0" blue="143" value="42.0" green="0"
label="Color entry 1" />
And this is my function:
...
fIn = open(szFileIn, "r")
fOut = open(szFileOut, "w")
i = 0
delta = (nMax-nMin+1)/64
szLine = fIn.readline()
while len(szLine) > 0:
if szLine.find("<colorRampEntry") > -1:
szToSearch = "value=\"" + str(i+1) + ".000000\""
szToReplace = "value=\"" + str(round(nMin + i*delta,6)) + "\""
szLine = str(szLine)
szLine.replace(szToSearch, szToReplace)
fOut.write(szLine)
i = i+1
else:
fOut.write(szLine)
pass
szLine = fIn.readline()
pass
Where szFileIn and szFileOut are the path if the file to read/write
and nMax/nMin are the minumun and maximum coming from bandStatistics.
I'm using QGis 1.0.2 Kore and I'm developing with Python.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.osgeo.org/pipermail/qgis-developer/attachments/20100202/fa56eab4/attachment.html
More information about the Qgis-developer
mailing list