internal override void SetStringValue(string value) { if (InHeader) { _propertyValue.Init(value, IfcParserType.String); if (_currentInstance.Entity != null) { _currentInstance.ParameterSetter(_currentInstance.CurrentParamIndex, _propertyValue); } } else { _binaryWriter.Write((byte)P21ParseAction.SetStringValue); string ret = value.Substring(1, value.Length - 2); //remove the quotes if (ret.Contains("\\") || ret.Contains("'")) //"''" added to remove extra ' added in IfcText Escape() method { XbimP21StringDecoder d = new XbimP21StringDecoder(); ret = d.Unescape(ret, _codePageOverride); } _binaryWriter.Write(ret); } if (_listNestLevel == 0) { _currentInstance.CurrentParamIndex++; } }
internal override void SetStringValue(string value) { if (InHeader) { _propertyValue.Init(value, IfcParserType.String); if (_currentInstance.Entity != null) _currentInstance.ParameterSetter(_currentInstance.CurrentParamIndex, _propertyValue); } else { _binaryWriter.Write((byte)P21ParseAction.SetStringValue); string ret = value.Substring(1, value.Length - 2); //remove the quotes if (ret.Contains("\\") || ret.Contains("'")) //"''" added to remove extra ' added in IfcText Escape() method { XbimP21StringDecoder d = new XbimP21StringDecoder(); ret = d.Unescape(ret, _codePageOverride); } _binaryWriter.Write(ret); } if (_listNestLevel == 0) _currentInstance.CurrentParamIndex++; }