<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                ThinkChat2.0新版上線,更智能更精彩,支持會話、畫圖、視頻、閱讀、搜索等,送10W Token,即刻開啟你的AI之旅 廣告
                聲明:所有權利保留。 轉載必須說明出處:http://blog.csdn.net/cartzhang/article/details/43794409 Json的Writer博客地址: http://blog.csdn.net/cartzhang/article/details/41009343 ?[UE4的Json讀寫方式<一>](http://blog.csdn.net/cartzhang/article/details/41009343) ## UE4 的json讀寫方式 ### 一、UE4的Json解析代碼 有網友說UE4的解析有問題,解析出錯。個人覺得應該是Json格式有問題。或解析的對象不正確,對象或數組用來對應的解析方式來解析的。 解析方式有兩種:類名為:FJsonSerializer,頭文件名稱為JsonSerializer.h ~~~ template <class CharType> static bool Deserialize( const TSharedRef< TJsonReader<CharType> >& Reader, TArray< TSharedPtr<FJsonValue> >& OutArray ) { StackState State; if ( !Deserialize( Reader, /*OUT*/State ) ) { return false; } if ( State.Object.IsValid() ) { return false; } OutArray = State.Array; return true; } template <class CharType> static bool Deserialize( const TSharedRef< TJsonReader<CharType> >& Reader, TSharedPtr<FJsonObject>& OutObject ) { StackState State; if ( !Deserialize( Reader, /*OUT*/State ) ) { return false; } if ( !State.Object.IsValid() ) { return false; } OutObject = State.Object; return true; } ~~~ 可以看出,第一個是針對數組的,第二個是針對Json對象的。請注意分別。 ### 二、樣例代碼 CPP中包含頭文件#include "Json.h"。 ~~~ void ATestPhysics1Character::JsonDeserialize() { FString JsonValue = "[{\"author\":\"4446545646544\"},{\"name\":\"jack\"}]"; FString JsonStr; TArray<TSharedPtr<FJsonValue>> JsonParsed; TSharedRef< TJsonReader<TCHAR> > JsonReader = TJsonReaderFactory<TCHAR>::Create(JsonValue); bool BFlag = FJsonSerializer::Deserialize(JsonReader, JsonParsed); if (BFlag) { int ArrayNumber = JsonParsed.Num(); if (ArrayNumber == 2) { FString FStringAuthor = JsonParsed[0]->AsObject()->GetStringField("author"); if (GEngine) { FString TmpString = "author :" + FStringAuthor; GEngine->AddOnScreenDebugMessage(-1, 5.f, FColor::Red, TmpString); } FString FStringName = JsonParsed[1]->AsObject()->GetStringField("name"); if (GEngine) { FString TmpString = "name :" + FStringName; GEngine->AddOnScreenDebugMessage(-1, 5.f, FColor::Red, TmpString); } } } } ~~~ 代碼不嚴謹,但是是個樣子。 ### 三、結果截圖 ![](https://box.kancloud.cn/2016-05-05_572b007b1d07f.jpg) ================ 若有問題,請隨時聯系! 感謝瀏覽!
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看