Revision 41688 trunk/org.gvsig.desktop/org.gvsig.desktop.compat.cdc/org.gvsig.fmap.dal/org.gvsig.fmap.dal.file/org.gvsig.fmap.dal.file.csv/src/main/java/org/gvsig/fmap/dal/store/csv/CSVStoreProvider.java

View differences:

CSVStoreProvider.java
1032 1032
            DataTypesManager typeManager = ToolsLocator.getDataTypesManager();
1033 1033
            CoercionWithLocale toDouble = (CoercionWithLocale) typeManager.getCoercion(DataTypes.DOUBLE);
1034 1034
            CoercionWithLocale toFloat = (CoercionWithLocale) typeManager.getCoercion(DataTypes.FLOAT);
1035
            CoercionWithLocale toDate = (CoercionWithLocale) typeManager.getCoercion(DataTypes.DATE);
1036
            Coercion toInt = typeManager.getCoercion(DataTypes.INT);
1037
            Coercion toLong = typeManager.getCoercion(DataTypes.LONG);
1035 1038

  
1036 1039
            List<String> row = reader.read();
1037 1040

  
......
1057 1060
                    }
1058 1061
                    if ( possibleDataTypes[i][T_LONG] ) {
1059 1062
                        try {
1060
                            value = Long.parseLong((String) rawvalue);
1063
                            value = toLong.coerce(rawvalue);
1061 1064
                            possibleDataTypes[i][T_LONG] = true;
1062 1065
                        } catch (Exception ex) {
1063 1066
                            possibleDataTypes[i][T_LONG] = false;
......
1065 1068
                    }
1066 1069
                    if ( possibleDataTypes[i][T_INT] ) {
1067 1070
                        try {
1068
                            value = Integer.parseInt((String) rawvalue);
1071
                            value = toInt.coerce(rawvalue);
1069 1072
                            possibleDataTypes[i][T_INT] = true;
1070 1073
                        } catch (Exception ex) {
1071 1074
                            possibleDataTypes[i][T_INT] = false;
......
1073 1076
                    }
1074 1077
                    if ( possibleDataTypes[i][T_DATE] ) {
1075 1078
                        try {
1076
                            value = dateFormat.parse((String) rawvalue);
1079
                            value = toDate.coerce(rawvalue, locale);
1077 1080
                            possibleDataTypes[i][T_DATE] = true;
1078 1081
                        } catch (Exception ex) {
1079 1082
                            possibleDataTypes[i][T_DATE] = false;

Also available in: Unified diff