簡體   English   中英

使用批處理腳本捕獲特定數據

[英]Capturing Specific Data using Batch Script

您好,我需要有關如何從多個 XML 文件中獲取特定數據並將其放入變量或一個列表中的幫助。

樣本 XML 如下。

<?xml version="1.0" encoding="utf-8"?>
<Data>
  <DataType>Temptale</DataType>
  <MonitorType>Temptale Ultra</MonitorType>
  <SerialNumber>MAH6P002K0</SerialNumber>
  <NumberOfDataPoints>402</NumberOfDataPoints>
  <FirstActivationTime>1/1/1970 12:00:00 AM</FirstActivationTime>
  <FirstDataPointTime>1/18/2023 12:36:23 AM</FirstDataPointTime>
  <StartTime>1/18/2023 12:36:23 AM</StartTime>
  <StopTime>1/18/2023 3:57:08 AM</StopTime>
  <Configuration>
    <SensitechConfiguration>
      <ProductID>10</ProductID>
      <FirmwareVersion>615</FirmwareVersion>
      <CustomerResets>0</CustomerResets>
      <UserInfoCharEncoding>ASCII</UserInfoCharEncoding>
      <EepromSize>EEPROM_16K</EepromSize>
      <PrimarySensorTypeID>BIO</PrimarySensorTypeID>
      <CommandByte value="01">STOPPED</CommandByte>
      <RadioSupported>false</RadioSupported>
      <BlockDownload>true</BlockDownload>
      <PrimarySensorThermType>13</PrimarySensorThermType>
      <PrimarySensorProbe>false</PrimarySensorProbe>
      <SecondarySensorTypeID>AMBIENT</SecondarySensorTypeID>
      <SecondarySensorThermType>0</SecondarySensorThermType>
      <SecondarySensorProbe>false</SecondarySensorProbe>
      <SecondarySensorEnabled>false</SecondarySensorEnabled>
      <Sensor1CalibrationOffset1>0</Sensor1CalibrationOffset1>
      <Sensor1CalibrationOffset2>0</Sensor1CalibrationOffset2>
      <Sensor1CalibrationOffset3>0</Sensor1CalibrationOffset3>
      <TimeZoneOffset>0</TimeZoneOffset>
      <Add1PercentRH>false</Add1PercentRH>
      <Add2PercentRH>false</Add2PercentRH>
      <TemperatureCompensationDisable>false</TemperatureCompensationDisable>
      <IdealTemperatureRangeEnable>false</IdealTemperatureRangeEnable>
      <PrintCertificateEnable>true</PrintCertificateEnable>
      <LcdHeartbeatIcon>false</LcdHeartbeatIcon>
      <TtvFileCreationDisable>false</TtvFileCreationDisable>
      <TimeZoneShiftEnable>false</TimeZoneShiftEnable>
      <TimeZoneDaylightEnable>false</TimeZoneDaylightEnable>
      <PdfFileCreationOption>CreateFull</PdfFileCreationOption>
      <ConfigurationPasswordEnable>false</ConfigurationPasswordEnable>
      <DownloadPasswordEnable>false</DownloadPasswordEnable>
      <LcdDisplayAlarmNumbers>false</LcdDisplayAlarmNumbers>
      <OkAlarmPrefixEnable>false</OkAlarmPrefixEnable>
      <NormalizedGridlineEnable>false</NormalizedGridlineEnable>
      <PDF_AFormat>false</PDF_AFormat>
      <PdfPasswordEnable>false</PdfPasswordEnable>
      <TtvPasswordEnable>false</TtvPasswordEnable>
      <PdfLanguage>ENGLISH</PdfLanguage>
      <ExpirationDate>1/1/1970 12:00:00 AM</ExpirationDate>
    </SensitechConfiguration>
    <UserConfiguration>
      <MeasurementInterval>30</MeasurementInterval>
      <StartUpDelay>0</StartUpDelay>
      <StopButtonEnable>true</StopButtonEnable>
      <StopButtonDelay>false</StopButtonDelay>
      <MultiDrop>false</MultiDrop>
      <LcdAlarmNotification>true</LcdAlarmNotification>
      <StartButtonDelay>false</StartButtonDelay>
      <SoftwareVersion>6921</SoftwareVersion>
      <TripNumber>0</TripNumber>
      <LcdBlink>false</LcdBlink>
      <LcdTemperatureUnit>Fahrenheit</LcdTemperatureUnit>
      <LcdSummary>true</LcdSummary>
      <CelsiusWith2Decimal>false</CelsiusWith2Decimal>
      <DisplayCurrentTemperature>true</DisplayCurrentTemperature>
      <FlashDriveWriteEnable>true</FlashDriveWriteEnable>
      <LcdContrast>7</LcdContrast>
      <LcdStartupDelayIconEnable>false</LcdStartupDelayIconEnable>
      <StopButtonReconfigureEnable>false</StopButtonReconfigureEnable>
      <ShippingInformationEnable>true</ShippingInformationEnable>
      <MktActivationEnergy>83.144</MktActivationEnergy>
      <IdealRangeHigh>158</IdealRangeHigh>
      <IdealRangeLow>-22</IdealRangeLow>
      <LcdAlarmCrossCheck>true</LcdAlarmCrossCheck>
      <LcdAlarmTimeDisplayEnable>false</LcdAlarmTimeDisplayEnable>
      <LcdAlarmTimeDisplayOption>Remaining</LcdAlarmTimeDisplayOption>
      <LcdAlarmNumber>Alarm1</LcdAlarmNumber>
      <TemperatureInStartupDelay>false</TemperatureInStartupDelay>
      <ExpirationDateEnable>false</ExpirationDateEnable>
      <TwoAlarmMode>false</TwoAlarmMode>
      <LedBlink>true</LedBlink>
      <LedStopBlink>false</LedStopBlink>
      <RemainingBatteryLife>0</RemainingBatteryLife>
    </UserConfiguration>
    <Passwords>
      <ConfigurationPassword></ConfigurationPassword>
      <DownloadPassword></DownloadPassword>
    </Passwords>
  </Configuration>
  <UserInformation></UserInformation>
  <ProgrammerName></ProgrammerName>
  <StatusWhenRead>
    <ReadTime>1/18/2023 4:57:14 AM</ReadTime>
    <CurrentTime>1/18/2023 3:57:18 AM</CurrentTime>
    <LastTemperature>72.2</LastTemperature>
  </StatusWhenRead>
  <Sensor index="Sensor1">
    <DataPoints>
      <Data number="1" marked="false">71.7</Data>
      <Data number="2" marked="false">71.8</Data>
      <Data number="3" marked="false">71.9</Data>
      <Data number="4" marked="false">71.9</Data>
      <Data number="5" marked="false">71.9</Data>
      <Data number="6" marked="false">71.8</Data>
      <Data number="7" marked="false">71.8</Data>
      <Data number="8" marked="false">71.8</Data>
      <Data number="9" marked="false">71.8</Data>
      <Data number="10" marked="false">71.8</Data>
      <Data number="11" marked="false">71.7</Data>
      <Data number="12" marked="false">71.7</Data>
      <Data number="13" marked="false">71.7</Data>
      <Data number="14" marked="false">71.7</Data>
      <Data number="15" marked="false">71.7</Data>
      <Data number="16" marked="false">71.7</Data>
      <Data number="17" marked="false">71.6</Data>
      <Data number="18" marked="false">71.6</Data>
      <Data number="19" marked="false">71.6</Data>
      <Data number="20" marked="false">71.6</Data>
      <Data number="21" marked="false">71.6</Data>
      <Data number="22" marked="false">71.6</Data>
      <Data number="23" marked="false">71.6</Data>
      <Data number="24" marked="false">71.5</Data>
      <Data number="25" marked="false">71.6</Data>
      <Data number="26" marked="false">71.5</Data>
      <Data number="27" marked="false">71.5</Data>
      <Data number="28" marked="false">71.5</Data>
      <Data number="29" marked="false">71.5</Data>
      <Data number="30" marked="false">71.5</Data>
      <Data number="31" marked="false">71.5</Data>
      <Data number="32" marked="false">71.5</Data>
      <Data number="33" marked="false">71.4</Data>
      <Data number="34" marked="false">71.5</Data>
      <Data number="35" marked="false">71.4</Data>
      <Data number="36" marked="false">71.4</Data>
      <Data number="37" marked="false">71.4</Data>
      <Data number="38" marked="false">71.4</Data>
      <Data number="39" marked="false">71.4</Data>
      <Data number="40" marked="false">71.4</Data>
      <Data number="41" marked="false">71.4</Data>
      <Data number="42" marked="false">71.4</Data>
      <Data number="43" marked="false">71.3</Data>
      <Data number="44" marked="false">71.3</Data>
      <Data number="45" marked="false">71.3</Data>
      <Data number="46" marked="false">71.3</Data>
      <Data number="47" marked="false">71.3</Data>
      <Data number="48" marked="false">71.3</Data>
      <Data number="49" marked="false">71.3</Data>
      <Data number="50" marked="false">71.3</Data>
      <Data number="51" marked="false">71.3</Data>
      <Data number="52" marked="false">71.3</Data>
      <Data number="53" marked="false">71.3</Data>
      <Data number="54" marked="false">71.3</Data>
      <Data number="55" marked="false">71.3</Data>
      <Data number="56" marked="false">71.3</Data>
      <Data number="57" marked="false">71.3</Data>
      <Data number="58" marked="false">71.2</Data>
      <Data number="59" marked="false">71.2</Data>
      <Data number="60" marked="false">71.2</Data>
      <Data number="61" marked="false">71.2</Data>
      <Data number="62" marked="false">71.2</Data>
      <Data number="63" marked="false">71.2</Data>
      <Data number="64" marked="false">71.2</Data>
      <Data number="65" marked="false">71.2</Data>
      <Data number="66" marked="false">71.2</Data>
      <Data number="67" marked="false">71.2</Data>
      <Data number="68" marked="false">71.2</Data>
      <Data number="69" marked="false">71.2</Data>
      <Data number="70" marked="false">71.2</Data>
      <Data number="71" marked="false">71.2</Data>
      <Data number="72" marked="false">71.2</Data>
      <Data number="73" marked="false">71.2</Data>
      <Data number="74" marked="false">71.2</Data>
      <Data number="75" marked="false">71.1</Data>
      <Data number="76" marked="false">71.2</Data>
      <Data number="77" marked="false">71.1</Data>
      <Data number="78" marked="false">71.1</Data>
      <Data number="79" marked="false">71.1</Data>
      <Data number="80" marked="false">71.1</Data>
      <Data number="81" marked="false">71.1</Data>
      <Data number="82" marked="false">71.1</Data>
      <Data number="83" marked="false">71.1</Data>
      <Data number="84" marked="false">71.1</Data>
      <Data number="85" marked="false">71.1</Data>
      <Data number="86" marked="false">71.1</Data>
      <Data number="87" marked="false">71.1</Data>
      <Data number="88" marked="false">71.1</Data>
      <Data number="89" marked="false">71.1</Data>
      <Data number="90" marked="false">71.1</Data>
      <Data number="91" marked="false">71.1</Data>
      <Data number="92" marked="false">71.1</Data>
      <Data number="93" marked="false">71</Data>
      <Data number="94" marked="false">71.1</Data>
      <Data number="95" marked="false">71</Data>
      <Data number="96" marked="false">71</Data>
      <Data number="97" marked="false">71</Data>
      <Data number="98" marked="false">71</Data>
      <Data number="99" marked="false">71</Data>
      <Data number="100" marked="false">71</Data>
    </DataPoints>
    <TestResults index="Sensor1">
      <Passed>true</Passed>
      <TesterName>IMI</TesterName>
      <TestTime>1/18/2023 4:57:15 AM</TestTime>
      <NistDataFileName>CH#31_1_18_2023 01_37_22</NistDataFileName>
      <ChamberStationNumber>31</ChamberStationNumber>
      <ChamberSerialNumber>936644</ChamberSerialNumber>
      <LoggerName>B3C495</LoggerName>
      <TestSetpoint number="1">
        <MonitorSetpoint>70.6</MonitorSetpoint>
        <NistSetpoint>70.8</NistSetpoint>
        <StandardTolerance>5</StandardTolerance>
        <ResultTolerance>0.2</ResultTolerance>
        <SetpointTime>04:17:42</SetpointTime>
      </TestSetpoint>
      <TestSetpoint number="2">
        <MonitorSetpoint>70.6</MonitorSetpoint>
        <NistSetpoint>70.8</NistSetpoint>
        <StandardTolerance>5</StandardTolerance>
        <ResultTolerance>0.2</ResultTolerance>
        <SetpointTime>04:17:42</SetpointTime>
      </TestSetpoint>
      <TestSetpoint number="3">
        <MonitorSetpoint>70.6</MonitorSetpoint>
        <NistSetpoint>70.8</NistSetpoint>
        <StandardTolerance>5</StandardTolerance>
        <ResultTolerance>0.2</ResultTolerance>
        <SetpointTime>04:17:42</SetpointTime>
      </TestSetpoint>
    </TestResults>
    <SensorType>BIO</SensorType>
    <SensorUnit>F</SensorUnit>
    <Alarms>
      <Alarm number="1">
        <AlarmEnabled>true</AlarmEnabled>
        <LogicEqual>false</LogicEqual>
        <AlarmType>HighTempLimitSingle</AlarmType>
        <AlarmTriggered>true</AlarmTriggered>
        <AlarmTriggerTime>1/18/2023 12:37:53 AM</AlarmTriggerTime>
        <AlarmSetpoints>
          <HiSetpoint1>41</HiSetpoint1>
          <LoSetpoint1>-22</LoSetpoint1>
          <HiSetpoint2>158</HiSetpoint2>
          <LoSetpoint2>-22</LoSetpoint2>
        </AlarmSetpoints>
        <AlarmCounter>402</AlarmCounter>
        <AlarmTimeThreshold>4</AlarmTimeThreshold>
      </Alarm>
      <Alarm number="2">
        <AlarmEnabled>true</AlarmEnabled>
        <LogicEqual>false</LogicEqual>
        <AlarmType>LowTempLimitSingle</AlarmType>
        <AlarmTriggered>false</AlarmTriggered>
        <AlarmTriggerTime>1/1/1970 12:00:00 AM</AlarmTriggerTime>
        <AlarmSetpoints>
          <HiSetpoint1>158</HiSetpoint1>
          <LoSetpoint1>32</LoSetpoint1>
          <HiSetpoint2>158</HiSetpoint2>
          <LoSetpoint2>-22</LoSetpoint2>
        </AlarmSetpoints>
        <AlarmCounter>0</AlarmCounter>
        <AlarmTimeThreshold>4</AlarmTimeThreshold>
      </Alarm>
      <Alarm number="3">
        <AlarmEnabled>true</AlarmEnabled>
        <LogicEqual>false</LogicEqual>
        <AlarmType>LowTempLimitSingle</AlarmType>
        <AlarmTriggered>false</AlarmTriggered>
        <AlarmTriggerTime>1/1/1970 12:00:00 AM</AlarmTriggerTime>
        <AlarmSetpoints>
          <HiSetpoint1>158</HiSetpoint1>
          <LoSetpoint1>-22</LoSetpoint1>
          <HiSetpoint2>158</HiSetpoint2>
          <LoSetpoint2>-22</LoSetpoint2>
        </AlarmSetpoints>
        <AlarmCounter>0</AlarmCounter>
        <AlarmTimeThreshold>4</AlarmTimeThreshold>
      </Alarm>
      <Alarm number="4">
        <AlarmEnabled>true</AlarmEnabled>
        <LogicEqual>false</LogicEqual>
        <AlarmType>HighTempLimitSingle</AlarmType>
        <AlarmTriggered>false</AlarmTriggered>
        <AlarmTriggerTime>1/1/1970 12:00:00 AM</AlarmTriggerTime>
        <AlarmSetpoints>
          <HiSetpoint1>158</HiSetpoint1>
          <LoSetpoint1>-22</LoSetpoint1>
          <HiSetpoint2>158</HiSetpoint2>
          <LoSetpoint2>-22</LoSetpoint2>
        </AlarmSetpoints>
        <AlarmCounter>0</AlarmCounter>
        <AlarmTimeThreshold>4</AlarmTimeThreshold>
      </Alarm>
      <Alarm number="5">
        <AlarmEnabled>false</AlarmEnabled>
        <LogicEqual>false</LogicEqual>
        <AlarmType>HighTempLimitSingle</AlarmType>
        <AlarmTriggered>false</AlarmTriggered>
        <AlarmTriggerTime>1/1/1970 12:00:00 AM</AlarmTriggerTime>
        <AlarmSetpoints>
          <HiSetpoint1>158</HiSetpoint1>
          <LoSetpoint1>-22</LoSetpoint1>
          <HiSetpoint2>158</HiSetpoint2>
          <LoSetpoint2>-22</LoSetpoint2>
        </AlarmSetpoints>
        <AlarmCounter>0</AlarmCounter>
        <AlarmTimeThreshold>4</AlarmTimeThreshold>
      </Alarm>
      <Alarm number="6">
        <AlarmEnabled>false</AlarmEnabled>
        <LogicEqual>false</LogicEqual>
        <AlarmType>HighTempLimitSingle</AlarmType>
        <AlarmTriggered>false</AlarmTriggered>
        <AlarmTriggerTime>1/1/1970 12:00:00 AM</AlarmTriggerTime>
        <AlarmSetpoints>
          <HiSetpoint1>158</HiSetpoint1>
          <LoSetpoint1>-22</LoSetpoint1>
          <HiSetpoint2>158</HiSetpoint2>
          <LoSetpoint2>-22</LoSetpoint2>
        </AlarmSetpoints>
        <AlarmCounter>0</AlarmCounter>
        <AlarmTimeThreshold>4</AlarmTimeThreshold>
      </Alarm>
    </Alarms>
  </Sensor>
  <ShipmentInformation>
    <ShipmentTag number="1">
      <TagDefID></TagDefID>
      <LOVPossibleValue></LOVPossibleValue>
      <Label></Label>
      <Value></Value>
      <FlexTagType>Shipment</FlexTagType>
    </ShipmentTag>
    <ShipmentTag number="2">
      <TagDefID></TagDefID>
      <LOVPossibleValue></LOVPossibleValue>
      <Label></Label>
      <Value></Value>
      <FlexTagType>Shipment</FlexTagType>
    </ShipmentTag>
    <ShipmentTag number="3">
      <TagDefID></TagDefID>
      <LOVPossibleValue></LOVPossibleValue>
      <Label></Label>
      <Value></Value>
      <FlexTagType>Shipment</FlexTagType>
    </ShipmentTag>
    <ShipmentTag number="4">
      <TagDefID></TagDefID>
      <LOVPossibleValue></LOVPossibleValue>
      <Label></Label>
      <Value></Value>
      <FlexTagType>Shipment</FlexTagType>
    </ShipmentTag>
    <ShipmentTag number="5">
      <TagDefID></TagDefID>
      <LOVPossibleValue></LOVPossibleValue>
      <Label></Label>
      <Value></Value>
      <FlexTagType>Shipment</FlexTagType>
    </ShipmentTag>
    <ShipmentTag number="6">
      <TagDefID></TagDefID>
      <LOVPossibleValue></LOVPossibleValue>
      <Label></Label>
      <Value></Value>
      <FlexTagType>Shipment</FlexTagType>
    </ShipmentTag>
    <ShipmentTag number="7">
      <TagDefID></TagDefID>
      <LOVPossibleValue></LOVPossibleValue>
      <Label></Label>
      <Value></Value>
      <FlexTagType>Shipment</FlexTagType>
    </ShipmentTag>
    <ShipmentTag number="8">
      <TagDefID></TagDefID>
      <LOVPossibleValue></LOVPossibleValue>
      <Label></Label>
      <Value></Value>
      <FlexTagType>Shipment</FlexTagType>
    </ShipmentTag>
    <ShipmentTag number="9">
      <TagDefID></TagDefID>
      <LOVPossibleValue></LOVPossibleValue>
      <Label></Label>
      <Value></Value>
      <FlexTagType>Shipment</FlexTagType>
    </ShipmentTag>
    <ShipmentTag number="10">
      <TagDefID></TagDefID>
      <LOVPossibleValue></LOVPossibleValue>
      <Label></Label>
      <Value></Value>
      <FlexTagType>Shipment</FlexTagType>
    </ShipmentTag>
  </ShipmentInformation>
  <LocalInfo>
    <TimeZone>Central Europe Standard Time</TimeZone>
    <UtcOffsetMinutes>60</UtcOffsetMinutes>
    <UserName>imi</UserName>
    <Culture>en-US</Culture>
  </LocalInfo>
  <AssemblyInfo>
    <AssemblyName>Sensitech.Devices</AssemblyName>
    <AssemblyVersion>2.3.0.0</AssemblyVersion>
    <ClassName>TTUltra</ClassName>
    <FileVersion>1.0</FileVersion>
  </AssemblyInfo>
  <AdditionalAssemblyInfo>
    <Station>SENSI-27</Station>
    <AssemblyName>TurboValidate Plus</AssemblyName>
    <AssemblyVersion>2.5.2207.802</AssemblyVersion>
  </AdditionalAssemblyInfo>
  <Signature xmlns="http://www.w3.org/2000/09/xmldsig#">
    <SignedInfo>
      <CanonicalizationMethod Algorithm="http://www.w3.org/TR/2001/REC-xml-c14n-20010315" />
      <SignatureMethod Algorithm="http://www.w3.org/2001/04/xmldsig-more#rsa-sha256" />
      <Reference URI="">
        <Transforms>
          <Transform Algorithm="http://www.w3.org/2000/09/xmldsig#enveloped-signature" />
        </Transforms>
        <DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256" />
        <DigestValue>L6z3IVi0JHgIsyy68K1aEkyTqTPf4hf1r3nmvNZsLEc=</DigestValue>
      </Reference>
    </SignedInfo>
    <SignatureValue>Iwhh0FJTfiACl2nbpOjmHUnawOxQ8Zd+B89EX1FD0xFNxZrT9eN7WQ3J7BfxhJXrek7ejlhWNI3FU6AGp0y5EU3P2e+crYSgd3xNzkB3KMeH0W5owElGMYNAjfqWrWZybo3Bz67JQ116dDex8EpoMU/3rtEM/7Hl8i1NTI9hBvU=</SignatureValue>
  </Signature>
</Data>

我的問題是:我需要獲取位於 <TestResults index="Sensor1"> 標簽之間的值,這是( <Passed>true</Passed>)我嘗試了很多東西但我沒能做到如果通過或失敗,我只需要測試結果。 謝謝!

那么如何獲取這個值並將其放入變量中呢?

非常感謝!!

@ECHO OFF
SETLOCAL
rem The following settings for the source directory and filename are names
rem that I use for testing and deliberately include names which include spaces to make sure
rem that the process works using such names. These will need to be changed to suit your situation.

SET "sourcedir=u:\your files"
SET "filename1=%sourcedir%\xmldata.xml"
SET "index="

FOR /f "usebackqtokens=1,2delims=<> " %%g IN ("%filename1%") DO (
 IF DEFINED index IF "%%g"=="Passed" SET "passed=%%h"
 IF DEFINED index GOTO done
 IF "%%g"=="TestResults" SET %%h
)

:done
IF DEFINED passed (ECHO FOR %index% - %passed%) ELSE (ECHO NOT found)

GOTO :EOF

在應用於真實數據之前,請始終對照測試目錄進行驗證。

請注意,如果文件名不包含空格等分隔符,則可以省略usebackq%filename1%周圍的引號。

讀取文件,使用< >空格作為分隔符標記每一行。 Select %%g%%h的前 2 個標記。

如果第一個標記是“Testresults”,則執行set %%h %%h將是index="something" ,因此變量index將被設置為"something"

閱讀下一行。 如果已設置index並且第一個標記為Passed ,則將 set passed給第二個標記並退出。

如果已設置index但下一行的第一個標記不是Passed ,則退出(假定錯誤條件)

報告結果。

如果所有文件中只有一行<Passed>true|false</Passed> ,那么解決方法很簡單:

@echo off
for %%f in (*.xml) do for /F "tokens=3 delims=<>" %%a in ('findstr "Passed" "%%f"') do echo %%f: %%a

如果有幾行Passed行並且您想要<TestResults index="Sensor1">之后的行,請使用此方法:

@echo off
setlocal

rem Process all *.xml files
for %%f in (*.xml) do (

   rem Get the line number of "TestResults index=Sensor1"
   for /F "delims=:" %%i in ('findstr /N /C:"TestResults index=\"Sensor1\"" "%%f"') do (

      rem Show the result from first "Passed" line after "TestResults"
      set "first="
      for /F "delims=:<> tokens=1,4" %%a in ('findstr /N "Passed" "%%f"') do (
         if not defined first  if %%a gtr %%i (
            echo %%f: %%b
            set "first=True"
         )
      )

   )
)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM