[PATCH] CSV import: accept comma as decimal separator

Miika Turkia miika.turkia at gmail.com
Sun Nov 6 21:40:52 PST 2016


Signed-off-by: Miika Turkia <miika.turkia at gmail.com>
---
 xslt/csv2xml.xslt | 11 +++++------
 1 file changed, 5 insertions(+), 6 deletions(-)

diff --git a/xslt/csv2xml.xslt b/xslt/csv2xml.xslt
index da41bb1..75d6344 100644
--- a/xslt/csv2xml.xslt
+++ b/xslt/csv2xml.xslt
@@ -159,16 +159,15 @@
           <xsl:variable name="curTime">
             <xsl:call-template name="getFieldByIndex">
               <xsl:with-param name="index" select="$timeField"/>
-              <xsl:with-param name="line" select="$line"/>
+              <xsl:with-param name="line" select="translate($line, ',', '.')"/>
             </xsl:call-template>
           </xsl:variable>
           <xsl:variable name="prevTime">
             <xsl:call-template name="getFieldByIndex">
               <xsl:with-param name="index" select="$timeField"/>
-              <xsl:with-param name="line" select="substring-before($remaining, $lf)"/>
+              <xsl:with-param name="line" select="translate(substring-before($remaining, $lf), ',', '.')"/>
             </xsl:call-template>
           </xsl:variable>
-
           <xsl:if test="$curTime != $prevTime">
             <xsl:call-template name="printFields">
               <xsl:with-param name="line" select="$line"/>
@@ -206,7 +205,7 @@
         <xsl:otherwise>
           <xsl:call-template name="getFieldByIndex">
             <xsl:with-param name="index" select="$timeField"/>
-            <xsl:with-param name="line" select="$line"/>
+            <xsl:with-param name="line" select="translate($line, ',', '.')"/>
           </xsl:call-template>
         </xsl:otherwise>
       </xsl:choose>
@@ -261,7 +260,7 @@
         <xsl:variable name="depth">
           <xsl:call-template name="getFieldByIndex">
             <xsl:with-param name="index" select="$depthField"/>
-            <xsl:with-param name="line" select="$line"/>
+            <xsl:with-param name="line" select="translate($line, ',', '.')"/>
           </xsl:call-template>
         </xsl:variable>
         <xsl:attribute name="depth">
@@ -279,7 +278,7 @@
           <xsl:variable name="temp">
             <xsl:call-template name="getFieldByIndex">
               <xsl:with-param name="index" select="$tempField"/>
-              <xsl:with-param name="line" select="$line"/>
+              <xsl:with-param name="line" select="translate($line, ',', '.')"/>
             </xsl:call-template>
           </xsl:variable>
           <xsl:attribute name="temp">
-- 
2.5.0



More information about the subsurface mailing list