Нет, вы передаете содержимое изображения, чтобы создать новый файл с содержимым в виде необработанного пути, это не может работать.
new File.fromRawPath
выполняет, в соответствии с документами :
Создает объект File из необработанного пути, то есть последовательность байтов, как представлено ОС.
blockquote>Что вы хотите сделать, это создать файл и сохранить содержимое в этом файле, это можно сделать так ( Источник ):
var imageFile = File('myimage.jpg'); var sink = imageFile.openWrite(); sink.write(bytes); await sink.flush(); await sink.close();
Предостерегающий ответ Zombiesheep, несмотря на это, мое решение состоит в том, чтобы промыть xml с xslt, преобразовывают, чтобы сделать это.
wash.xsl:
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="xml" indent="no" encoding="UTF-8"/>
<xsl:template match="/|comment()|processing-instruction()">
<xsl:copy>
<xsl:apply-templates/>
</xsl:copy>
</xsl:template>
<xsl:template match="*">
<xsl:element name="{local-name()}">
<xsl:apply-templates select="@*|node()"/>
</xsl:element>
</xsl:template>
<xsl:template match="@*">
<xsl:attribute name="{local-name()}">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:template>
</xsl:stylesheet>
У меня была аналогичная проблема (мне нужно было удалить атрибут пространства имен из определенного элемента, а затем вернуть XML как XmlDocument
в BizTalk), но решение было странным.
Перед загрузкой XML-строки в объект XmlDocument
я сделал замену текста, чтобы удалить неправильный атрибут пространства имен. Сначала это казалось неправильным, так как я закончил с XML, который не мог быть проанализирован «XML Visualizer» в Visual Studio. Это то, что изначально оттолкнуло меня от такого подхода.
Тем не менее, текст все еще можно было загрузить в XmlDocument
, и я мог нормально вывести его в BizTalk.
Также обратите внимание, что раньше я попал в тупик, пытаясь использовать childNode.Attributes.RemoveAll ()
для удаления атрибута пространства имен - он просто вернулся!