javascript

java

python

c#

android

c++

node.js

php

html

jquery

ios

reactjs

css

.net

git

ruby-on-rails

sql

c

ruby

string

有什么办法可以在PHP中将json转换为xml?

有什么办法可以在PHP中将json转换为xml? 我知道xml到json的可能性很大。

trans by 2020-08-12T04:00:42Z

xml-在C#中将字符串转换为XmlNode的更好方法


我想将一个字符串(显然是xml)转换为C#中的XmlNode。在网上搜索时,我得到了这段代码。我想知道这是否是将字符串转换为XmlNode的好方法? 我必须在一个循环中执行此转换,是否会引起性能问题?

        XmlTextReader textReader = new XmlTextReader(new StringReader(xmlContent));
        XmlDocument myXmlDocument = new XmlDocument();
        XmlNode newNode = myXmlDocument.ReadNode(textReader);

请回复,

谢谢
亚历克斯

trans by 2020-08-11T22:36:30Z

xml-是否有人使用javascript配置文件?

我们有特定于环境的javascript文件,因此我在考虑采用一种通用方法来读取XML(配置)文件来存储不同的特定于环境的设置。 我很想知道这里是否还有其他人(或者如果没有,您是否有理由这么做)?

trans by 2020-08-11T21:40:28Z

xsd-XML名称空间和属性

我试图了解名称空间如何在XML中工作。 当我有一个像foo:bar这样的元素时,这些属性通常将没有名称空间。 但是有时候他们会。 即使声明了默认名称空间,属性也位于元素的名称空间中吗? 查看xsd中的xhtml,似乎属性是架构的一部分,应该在xhtml的命名空间中,但是它们从未以这种方式呈现...

trans by 2020-08-11T15:52:46Z

java-Android资源-数组数组

我正在尝试实现一种资源数据结构,其中包括一个数组数组,尤其是字符串。 我遇到的问题是如何获取子数组对象及其特定值。 这是我的资源文件的样子。

<resources>
   <array name="array0">
     <item>
       <string-array name="array01">
         <item name="id">1</item>
         <item name="title">item one</item>
       </string-array>
     </item>
     <item>
       <string-array name="array02">
         <item name="id">2</item>
         <item name="title">item two</item>
       </string-array>
     </item>
     <item>
       <string-array name="array03">
         <item name="id">3</item>
         <item name="title">item three</item>
       </string-array>
     </item>
   </array>
</resources>

然后,在我的Java代码中,我检索数组并尝试像这样访问子元素。

TypedArray typedArray = getResources().obtainTypedArray(R.array.array0);

TypedValue typedValue = null;

typedArray.getValue(0, typedValue);

此时,typedArray对象应表示字符串数组“ array01”,但是,我看不到如何检索“ id”和“ title”字符串元素。 任何帮助将不胜感激,在此先感谢。

trans by 2020-08-11T04:56:19Z

xslt-XSL:避免将名称空间定义导出到生成的XML文档

我想从一些XML文件中获取数据并将其转换为新的XML文档。 但是,我不希望XSLT中的名称空间定义出现在结果文档中。

换一种说法:

资源:

<Namespace:Root xmlns:Namespace="http://www.something.com">

样式表:

<?xml version="1.0" encoding="ISO-8859-1"?>
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:Namespace="http://www.something.com">

结果:

<resultRoot xmlns:Namespace="http://www.something.com">
<!--I don't want the Namespace definition above-->

我正在使用msxsl进行转换。

trans by 2020-08-10T20:44:40Z

将UTF-8编码的数据发布到服务器会丢失某些字符

我正在从事包括服务器(JavaEE应用程序)和客户端(Android应用程序)通信的项目。 XML作为HTTP请求的POST参数之一发送(称为“ xml”)。 我还传递给服务器的其他一些POST参数,但是为了简单起见,在下面的函数中,我将其删除。 发生的问题是某些字母未正确传递到服务器,例如字符Ű(请注意,这不是德语Ü,顺便说一句正确传递了)。 发送代码如下:

private String postSyncXML(String XML) {
    String url = "http://10.0.2.2:8080/DebugServlet/DebugServlet";
    HttpClient httpclient = new DefaultHttpClient();  

    List<NameValuePair> nameValuePairs = new ArrayList<NameValuePair>();
    nameValuePairs.add(new BasicNameValuePair("xml",XML));

    UrlEncodedFormEntity form;
    try {
        form = new UrlEncodedFormEntity(nameValuePairs);
                form.setContentEncoding(HTTP.UTF_8);
        HttpPost httppost = new HttpPost(url);

        httppost.setEntity(form);

        HttpResponse response = (HttpResponse) httpclient .execute(httppost);
        HttpEntity resEntity = response.getEntity();  
        String resp = EntityUtils.toString(resEntity);
        Log.i(TAG,"postSyncXML srv response:"+resp);
        return resp;
    } catch (UnsupportedEncodingException e) {
        e.printStackTrace();
    } catch (ClientProtocolException e) {
        e.printStackTrace();
    } catch (IOException e) {
        e.printStackTrace();
    }
    return null;
}

我的猜测是问题出在BasicNameValuePair中,我用于将XML设置为POST参数之一,并且其文档说它使用US-ASCII字符集。 发送UTF-8编码的POST字段的正确方法是什么?

trans by 2020-08-10T07:37:14Z

Android:在XML中调整imageview的大小

我的图像太大,无法在屏幕上显示,我希望它在屏幕上很小。 如何通过XML更改图像的大小?

我试过了:

<ImageView
android:id="@+id/image"
android:layout_width = "100dp"
android:layout_height= "100dp"
android:scaleType="center"
android:layout_gravity="center_horizontal|bottom"
android:src="@drawable/dashboard_rpm_bottom"
>
</ImageView>

但是图片没有调整大小...被裁剪了。 有任何想法吗?

trans by 2020-08-09T05:33:04Z

xml-android include标签-无效的布局参考

我在通过Android布局xml文件中的include标记包含其他布局时遇到问题。 指定布局参考(@layout / ...)时,我在Eclipse ADT中收到一个InflateException并出现以下错误:InflateException:您必须指定一个有效的布局引用。 布局ID @ layout / func_edit_simple_calculator_toolbox无效。

该引用应该是有效的,因为我已经从其他布局的列表中选择了它,并且没有键入它。我正在使用android sdk v2.1

这些是布局文件

func_edit_simple_calculator_toolbox.xml

<?xml version="1.0" encoding="utf-8"?>
<TableLayout
  xmlns:android="http://schemas.android.com/apk/res/android"
  android:layout_height="wrap_content" android:layout_width="wrap_content">

<TableRow android:id="@+id/TableRow01" android:layout_width="wrap_content"android:layout_height="wrap_content">
<Button android:id="@+id/Button01" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="1"></Button>
<Button android:id="@+id/Button02" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="2"></Button>
<Button android:id="@+id/Button03" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="3"></Button>
<Button android:id="@+id/Button04" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="+"></Button>
</TableRow>
<TableRow android:id="@+id/TableRow02" android:layout_width="wrap_content" android:layout_height="wrap_content">
<Button android:id="@+id/Button05" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="4"></Button>
<Button android:id="@+id/Button06" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="5"></Button>
<Button android:id="@+id/Button07" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="6"></Button>
<Button android:id="@+id/Button08" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="-"></Button>
</TableRow>
</TableLayout>

function_editor_layout.xml

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    >

<com.calculoid.FunctionView android:id="@+id/function_view" android:layout_width="fill_parent" android:layout_height="fill_parent"/>

<include android:id="@+id/include01" android:layout_width="wrap_content" android:layout_height="wrap_content" layout="@layout/func_edit_simple_calculator_toolbox"></include>
</LinearLayout>

有谁知道可能是什么问题吗?

提前致谢

trans by 2020-08-03T12:21:09Z

xml-每个WPF文件中的xmlns是什么?

什么是xmlns

当我们创建WPF项目时,它在XAML文件中扮演什么角色?

trans by 2020-08-02T19:31:53Z

红宝石-在单个节点上使用XPath返回所有节点中的元素

我正在解析看起来像这样的XML文档:

<MyBook>
   <title>Favorite Poems</title>
   <issn>123-456</issn>
   <pages>45</pages>
</MyBook>
<MyBook>
   <title>Chocolate Desserts</title>
   <issn>654-098</issn>
   <pages>100</pages>
</MyBook>
<MyBook>
   <title>Jabberwocky</title>
   <issn>454-545</issn>
   <pages>19</pages>
</MyBook>

我使用xpath拉出MyBook节点并像这样遍历它们:

xmldoc.xpath("//MyBook").each do |node|
   mytitle=node.xpath("//title").text
   puts mytitle
end

输出看起来像这样:

Favorite PoemsChocolateDessertsJabberwocky
Favorite PoemsChocolateDessertsJabberwocky
Favorite PoemsChocolateDessertsJabberwocky

好像该节点实际上是整个xmldoc。 但是,如果我在迭代器中打印出该节点,则每次它达到我的期望时,都只有一个MyBook节点。 我需要能够连续地从每个节点中拉出子节点,而不是整个文档中所有相同类型的子节点。 我究竟做错了什么?

trans by 2020-08-02T18:50:02Z

.net-XSLT是否具有Split()函数?

我在节点中有一个字符串,我想在'?'上分割字符串 并返回数组中的最后一项。

例如,在下面的块中:

<a>
    <xsl:attribute name="href">
        /newpage.aspx?<xsl:value-of select="someNode"/>
    </xsl:attribute>
    Link text
</a>

我想分割someNode的值。

编辑:这是我用来为Asp.Net页面加载Xsl的VB.Net:

Dim xslDocPath As String = HttpContext.Current.Server.MapPath("~/App_Data/someXslt.xsl")
Dim myXsltSettings As New XsltSettings()
Dim myXMLResolver As New XmlUrlResolver()

myXsltSettings.EnableScript = True
myXsltSettings.EnableDocumentFunction = True

myXslDoc = New XslCompiledTransform(False)
myXslDoc.Load(xslDocPath, myXsltSettings, myXMLResolver)

Dim myStringBuilder As New StringBuilder()
Dim myXmlWriter As XmlWriter = Nothing

Dim myXmlWriterSettings As New XmlWriterSettings()
myXmlWriterSettings.ConformanceLevel = ConformanceLevel.Auto
myXmlWriterSettings.Indent = True
myXmlWriterSettings.OmitXmlDeclaration = True

myXmlWriter = XmlWriter.Create(myStringBuilder, myXmlWriterSettings)

myXslDoc.Transform(xmlDoc, argumentList, myXmlWriter)

Return myStringBuilder.ToString()

更新:这是在特定节点上拆分XML的示例

trans by 2020-08-01T19:39:09Z

串联多个XML字符串?

我经历了如何在android XML中连接多个字符串? 最后有评论

<ListPreference android:key="key_bbb" android:title="@string/bbb"

<ListPreference android:key="key_bbb" android:title="@string/bbb"-AndrzejDuś

我做了自己的例子,但是没有用。 Andrzej也是如此,或者我的代码中有错误。

<ListPreference android:key="key_bbb" android:title="@string/bbb"应包含"bbb aaa"但包含2990736973398279279而不是"bbb aaa"

<string name="aaa">aaa</string>
<string name="bbb">bbb @strings/aaa</string>

查询:

是否可以仅在xml中进行一些串联,而无需更改源代码?

我不想在代码中进行编辑的原因,因为我在<ListPreference android:key="key_bbb" android:title="@string/bbb"中使用了此字符串

例如:

<ListPreference android:key="key_bbb" android:title="@string/bbb" ....

如果您明白我的意思,就不可能使用这种方法

String title = res.getString(R.string.title, appName);
trans by 2020-07-31T12:46:03Z

php-如何在Laravel中获取HTTP请求正文内容?

我正在使用'saved!'创建API,并正在使用PHPUnit对其进行测试。我需要测试旧功能的兼容性,这是XML POST。 截至目前,我的第一个测试如下所示:

public function testPostMessages()
{
    $response = $this->call('POST', 'xml');

    $this->assertEquals(200, $response->getStatusCode());
}

这一切都很好。 我列表上的下一个实际上是通过POST发送XML数据。 因此,对于第二项测试,我有:

public function testPostMessagesContent()
{
    $response = $this->call('POST', 'xml');

    $this->assertTrue(is_valid_xml($response->getContent()));
}

该测试失败。 但是,我没有发送XML数据。 如何发送XML?
现在,在那之后,我需要添加功能以从请求中获取内容。 我知道有一个'saved!'对象可以与之交互,但是我不完全知道该调用哪种方法。 如何从控制器内部获取XML?


更新#1

在此期间,我得到了一些结果。 我当前的测试如下:

public function testPostMessagesContent()
{
    $response = $this->call('POST', 'xml', array('key' => 'value'), array(), array(), array('content' => 'content'));
    $this->assertContains('~', $response->getContent());
}

我在那里只有波浪号,因为我知道它不匹配,这样我就可以看到整个响应。 在'saved!'中,我有:

class XmlController extends Controller {
public function index(Request $request)
{
    return $request;
    }
}

我从'saved!'的输出如下:

1) XmlTest::testPostMessagesContent
Failed asserting that 'POST xml HTTP/1.1
Accept:          text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Charset:  ISO-8859-1,utf-8;q=0.7,*;q=0.7
Accept-Language: en-us,en;q=0.5
Content-Type:    application/x-www-form-urlencoded
Host:            localhost
User-Agent:      Symfony/2.X
' contains "~".

我的参数和内容在哪里? 我觉得我只是在错误地使用'saved!'


更新#2

我将控制器更新为使用'saved!',如下所示:

class XmlController extends Controller
{
    public function index()
   {
        $content = Request::all();
        return $content;
    }
}

这返回了我的键值对,但没有返回内容。

1) XmlTest::testPostMessagesContent
Failed asserting that '{"key":"value"}' contains "~".

键值对很好; 这是进步。 但是,我真正需要的是内容,因为我将在请求的内容部分中接收该数据。 如果我使用'saved!',则会返回一个空白字符串。 这是我在测试中的电话:

$response = $this->call('POST', 'xml', array('key' => 'value'), array(), array(), array('content' => 'content'));

这是我的测试结果:

1) XmlTest::testPostMessagesContent
Failed asserting that '' contains "~".

更新#3

我根本无法获得HTTP请求的内容主体。 由于XML无法正常工作,因此我继续使用JSON的API的REST部分。 这是我的测试之一:

public function testPostMessagesContent()
{
    $response = $this->call('POST', 'messages', ['content' => 'content']);

    $this->assertEquals('saved!', $response->getContent());
}

该测试通过。 如果使用curl,我也会接到一个成功的电话:

curl -X POST -d "content=my_new_content" "http://localhost:8000/messages"

这将返回'saved!',这很棒,但是如果我尝试在独立的PHP脚本中使用curl(模拟客户端),则返回以下内容:

Array ( [url] => http://localhost:8000/messages [content_type] => text/html; charset=UTF-8 [http_code] => 302 [header_size] => 603 [request_size] => 118 [filetime] => -1 [ssl_verify_result] => 0 [redirect_count] => 0 [total_time] => 0.063977 [namelookup_time] => 0.000738 [connect_time] => 0.000866 [pretransfer_time] => 0.000943 [size_upload] => 12 [size_download] => 328 [speed_download] => 5126 [speed_upload] => 187 [download_content_length] => -1 [upload_content_length] => 12 [starttransfer_time] => 0.057606 [redirect_time] => 0 [certinfo] => Array ( ) [primary_ip] => ::1 [primary_port] => 8000 [local_ip] => ::1 [local_port] => 63248 [redirect_url] => http://localhost:8000 [request_header] => POST /messages HTTP/1.1 Host: localhost:8000 Accept: */* Content-type: text/xml Content-length: 12 ) Redirecting to http://localhost:8000. 

这是我的curl命令,添加POST字段:

curl_setopt($ch, CURLOPT_POSTFIELDS, 'content=test');

在我看来,POSTFIELDS已添加到请求的正文中。 在这种情况下,我仍然有同样的问题。 我无法获取HTTP标头的正文内容。 注释掉我的验证后,我得到:

Array ( [url] => http://localhost:8000/messages [content_type] => text/html; charset=UTF-8 [http_code] => 200 [header_size] => 565 [request_size] => 118 [filetime] => -1 [ssl_verify_result] => 0 [redirect_count] => 0 [total_time] => 0.070225 [namelookup_time] => 0.000867 [connect_time] => 0.00099 [pretransfer_time] => 0.001141 [size_upload] => 12 [size_download] => 6 [speed_download] => 85 [speed_upload] => 170 [download_content_length] => -1 [upload_content_length] => 12 [starttransfer_time] => 0.065204 [redirect_time] => 0 [certinfo] => Array ( ) [primary_ip] => ::1 [primary_port] => 8000 [local_ip] => ::1 [local_port] => 63257 [redirect_url] => [request_header] => POST /messages HTTP/1.1 Host: localhost:8000 Accept: */* Content-type: text/xml Content-length: 12 ) saved!

所以我收到了'saved!'消息。 大! 但是,现在我的数据库中有一个空白行。 不是很好。 它仍然看不到正文内容,仅看到标题。


回答标准

我正在寻找以下问题的答案:

  1. 为什么我无法获取请求的正文内容?
  2. 如何获取请求的正文内容?
trans by 2020-07-31T05:02:33Z

xml-如何将xsd转换为人类可读的文档?

我们有一些基于XML的接口,这些接口在XSD架构中已有很好的记录。 这些接口现在将公开可用,我们希望为其创建参考文档。

有没有可以自动将XSD文件转换为可读性更高的格式的工具?

trans by 2020-07-30T19:41:09Z

xsd-设计XML模式的最佳实践是什么?

作为一名业余软件开发人员(我仍然在学术界),我已经为XML文档编写了一些模式。 我经常碰到会导致外观看起来丑陋的XML文档,因为我不确定XML到底是什么。

我的假设:

<property> value </property>

属性=值

<property attribute="attval"> value </property>

具有特殊描述符的属性,即属性。

<parent>
  <child> value </child>
</parent>

父级具有特征“子级”,其值为“值”。

<tag />

“标签”是一个标志,或者直接翻译为文本。 我不确定这一点。

<parent>
  <child />
</parent>

“孩子”描述“父母”。 “孩子”是一个标志或布尔值。 我也不确定这一点。

如果您想做一些表示笛卡尔坐标的操作,则会产生歧义:

<coordinate x="0" y="1 />

<coordinate> 0,1 </coordinate>

<coordinate> <x> 0 </x> <y> 1 </y> </coordinate>

其中哪一个最正确? 基于当前的XML模式设计概念,我倾向于第三种,但是我真的不知道。

有哪些简要描述如何有效设计xml模式的资源?

trans by 2020-07-30T16:23:34Z

android-如何在微调器中以XML添加提示

我试图在微调窗口小部件中添加提示,因为在EditText中没有提示的选项,我想将性别显示为提示,单击时必须仅显示男性和女性,而不显示提示。

如何仅使用XML完成

微调器的XML代码。

  <Spinner
      android:layout_width="match_parent"
      android:layout_height="wrap_content"
      android:id="@+id/spinner1"
      android:entries="@array/gender"
      android:layout_marginTop="10dp"
      android:layout_marginLeft="25dp"
      android:layout_marginRight="25dp"
      android:layout_gravity="center_horizontal" />

微调器的字符串数组

<string-array name="gender">
     <item>Male</item>
     <item>Female</item>
</string-array>
trans by 2020-07-30T12:15:29Z

如何使用Java在String中创建XML对象?

我正在尝试编写代码来帮助我创建XML对象。 例如,我将字符串作为函数的输入,它将返回XMLObject。

XMLObject convertToXML(String s) {}

当我在网上搜索时,通常会看到有关创建XML文档的示例。 因此,我所看到的关于创建XML并写入文件和创建文件的所有内容。 但是我做了类似的事情:

Document document = new Document();
Element child = new Element("snmp");
child.addContent(new Element("snmpType").setText("snmpget"));
child.addContent(new Element("IpAdress").setText("127.0.0.1"));
child.addContent(new Element("OID").setText("1.3.6.1.2.1.1.3.0"));
document.setContent(child);

您认为创建XML对象就足够了吗? 还可以请您帮我如何从XML中获取数据吗? 例如,如何从该XML中获得base.xml

非常感谢大家

编辑1:实际上,现在我想拥有base.xml这样的文件对我来说可能会容易得多,例如,我将所有基本内容写入其中:

<snmp>
<snmpType><snmpType>
<OID></OID>
</snmp>

然后使用此文件创建XML对象。 您对此有何看法?

trans by 2020-07-30T05:40:03Z

包含名称空间的XDocument

我尝试使用XDocument查询以下XML:

<E2ETraceEvent xmlns="http://schemas.microsoft.com/2004/06/E2ETraceEvent">
    <System xmlns="http://schemas.microsoft.com/2004/06/windows/eventlog/system">
        <EventID>589828</EventID>
        <Type>3</Type>
        <SubType Name="Information">0</SubType>
        <Level>8</Level>
        <TimeCreated SystemTime="2010-06-01T09:45:15.8102117Z" />
        <Source Name="System.ServiceModel" />
        <Correlation ActivityID="{00000000-0000-0000-0000-000000000000}" />
        <Execution ProcessName="w3wp" ProcessID="5012" ThreadID="5" />
        <Channel />
        <Computer>TESTSERVER3A</Computer>
    </System>
    <ApplicationData>
        <TraceData>
            <DataItem>
                <TraceRecord xmlns="http://schemas.microsoft.com/2004/10/E2ETraceEvent/TraceRecord" Severity="Information">
                    <TraceIdentifier>http://msdn.microsoft.com/en-GB/library/System.ServiceModel.Activation.WebHostCompilation.aspx</TraceIdentifier>
                    <Description>Webhost compilation</Description>
                    <AppDomain>/LM/W3SVC/257188508/Root-1-129198591101343437</AppDomain>
                    <Source>System.ServiceModel.Activation.ServiceParser/39498779</Source>
                    <ExtendedData xmlns="http://schemas.microsoft.com/2006/08/ServiceModel/StringTraceRecord">
                        <VirtualPath>/Service.svc</VirtualPath>
                    </ExtendedData>
                </TraceRecord>
            </DataItem>
        </TraceData>
    </ApplicationData>
</E2ETraceEvent>

执行以下代码将为xEl1返回null,除非我手动删除名称空间:

XDocument xDoc = XDocument.Parse(CurrentString);
XElement xEl1 = xDoc.Element("E2ETraceEvent");
XElement xEl2 = xEl1.Element("System");
XElement xEl3 = xEl2.Element("Correlation");
XAttribute xAtt1 = xEl3.Attribute("ActivityID");
String sValue = xAtt1.Value;

您如何编写代码以提取XDocument中的Guid?

trans by 2020-07-30T04:54:02Z

没有值的xml属性有效吗?

我想要一个没有任何值的XML属性,当它存在或不存在时,它仅具有一种含义。

那有效吗?

trans by 2020-07-29T20:25:51Z

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 下一页 共27页