標籤: 台北網頁設計

  • 同樣是傳祺的SUV,為啥大家都愛GS4不買GS5?真是GS5不好嗎?

    同樣是傳祺的SUV,為啥大家都愛GS4不買GS5?真是GS5不好嗎?

    那就是如今傳祺非常紅火的GS4車型了,它較低的起步價更加的親民。而時尚的外觀與內飾設計配合一樣出色的底盤,因此它熱銷就不難想象了。就現在來看,傳祺GS5真的不值得購買么。今天就來好好對比下,看看它們哪款比較出色。

    國產SUV在最近這幾年發力非常猛,大有超過日韓SUV的氣勢。究其原因是自主品牌經過多年的技術積累,同時堅持正向研發配合大量的資金投入的基礎下的成果。而且如今的自主廠商也漸漸的意識到只有原創的設計,符合大眾的審美的車型才能在激烈競爭的市場上生存下來。

    回顧前幾年的SUV市場,當然合資品牌還沒有很多SUV車型推出。因此當然也有一些自主品牌看中了合資品牌沒有佔領了15萬這個區間的緊湊SUV市場,於是推出一些實力還算比較出色的SUV車型來提升自家的品牌形象,其中傳祺GS5 Super就是最突出的例子。它的外觀原創度很高,整體的底盤調校與做工都非常出色,無奈是當時由於定價的偏高與消費者對自主SUV的認可還沒有現在這麼深,於是它的市場表現一直不算很出色。

    雖然GS5 Super有點出師不利,但它前期推出市場還是有不少的消費者購買的,它出色的做工與良好的底盤響應都使得傳祺在市場上有了不錯的口碑,於是就有了後來的事情了。那就是如今傳祺非常紅火的GS4車型了,它較低的起步價更加的親民。而時尚的外觀與內飾設計配合一樣出色的底盤,因此它熱銷就不難想象了。就現在來看,傳祺GS5真的不值得購買么?今天就來好好對比下,看看它們哪款比較出色?

    綜上所述,目前的GS5 Super相比GS4除了動力有一定的優勢之外,它的價格仍然是一大硬傷,當然如今消費者對傳祺的認可已經很不錯了,就像其最新推出的GS8一樣,只要品質足夠的出色,熱銷真的不是問題。

    那麼未來GS5 Super要怎麼才能重新煥發青春呢?在看來,如今最亟待改變的就是換裝全新的家族式面孔,與傳祺的其他車型有良好的延續,同時內飾的造型與配置都要相應的提升,這樣只要保持之前的行駛質感的話再把價格降低一些。這樣的話,相信GS5 Super要熱賣真的不成問題。本站聲明:網站內容來源於http://www.auto6s.com/,如有侵權,請聯繫我們,我們將及時處理

    【其他文章推薦】

    網頁設計一頭霧水該從何著手呢? 台北網頁設計公司幫您輕鬆架站!

    網頁設計公司推薦不同的風格,搶佔消費者視覺第一線

    ※Google地圖已可更新顯示潭子電動車充電站設置地點!!

    ※廣告預算用在刀口上,台北網頁設計公司幫您達到更多曝光效益

    ※別再煩惱如何寫文案,掌握八大原則!

    網頁設計最專業,超強功能平台可客製化

    ※回頭車貨運收費標準

  • 傳奇新生 換裝1.5L發動機的新捷達有什麼變化

    傳奇新生 換裝1.5L發動機的新捷達有什麼變化

    電影結束后,一汽-大眾汽車有限公司董事、總經理張丕傑上前發表感言致辭,喚醒“國民情捷”,引發情感共鳴宣布《平凡成就偉大》這部舞台劇正式演出,男主角為了尋找父親以前賣了的老捷達,從而找上尋車的道路。外觀更時尚年輕化外觀方面,我們可以看到像邁騰、朗逸那樣大眾最新的橫貫式前臉設計語言,從正前臉看去,X造型的設計元素使車頭帶來很強的視覺衝擊,彰顯了新捷達的力量和運動感。

    問起老一輩人最熟悉的車型,他們肯定會異口同聲的說老三樣:捷達、富康、桑塔納,也許連他們自己都難以想象,捷達已經和國人的緣分已經走過了25個年頭,捷達承載的不只是一代人甚至是兩代人的美好回憶,卓越的品質使其締造了一個又一個傳奇。

    12月7日晚,備受關注的新捷達在廣州亞運城綜合體育館正式上市,提供了1.4L、1.5L、1.4T三種動力共9款車型,售價區間在7.99-13.49萬元之間。

    從場外觀看,可見捷達的發布會充滿着時尚的元素,藍色主題的燈光,音樂節般的場景布局,是否意味着這次新捷達更時尚年輕化的設計路線呢?

    走進發布會的場館內,彷彿走進了一個汽車的博物館,每一輛車子都是時間的見證者,25年來所推出的所有捷達車型湧現眼前。

    一部簡述捷達的國民情節大電影拉開了發布會的帷幕,描述捷達在中國汽車市場的25年傳奇經歷,多項技術的創新、時代的發展、團隊的奮鬥都歷歷在目。

    電影結束后,一汽-大眾汽車有限公司董事、總經理張丕傑上前發表感言致辭,喚醒“國民情捷”,引發情感共鳴宣布《平凡成就偉大》這部舞台劇正式演出,男主角為了尋找父親以前賣了的老捷達,從而找上尋車的道路。

    外觀

    更時尚年輕化

    外觀方面,我們可以看到像邁騰、朗逸那樣大眾最新的橫貫式前臉設計語言,從正前臉看去,X造型的設計元素使車頭帶來很強的視覺衝擊,彰顯了新捷達的力量和運動感。

    側面的簡潔流暢額腰線從前翼子板一直延伸至車尾,使整個車身顯得更加修長,搭配硬朗有力的曲面輪廓,給人很緊緻飽滿的感覺,全新造型的輪轂,更突顯了整車的運動氛圍,尾部的設計頗有種小寶來的味道。

    內飾

    全面升級

    沿用了大眾最新的內飾設計風格,全新設計的組合儀錶盤和平底式方向盤,金屬質感的裝飾板和烤漆面板的合理搭配,營造了很好的質感,更讓車內充滿時尚運動的氣息,配置方面根據車型不同,配備有自動空調、感應雨刷、自動頭燈、座椅加熱、定速巡航、胎壓監測等非常豐富的配置。

    動力

    全新的動力總成

    全新的EA211系列1.5L自然吸氣發動機取代了之前的1.6L發動機,最大功率110馬力,最大扭矩150牛米,擁有雙VVT正時調節系統,持續可調式機油泵等先進技術,降低油耗的同時,排放和噪音也改善了不少,與之匹配的是5擋手動或者6擋自動變速器,而1.4L和1.4T發動機得以保留。

    總結:本次上的新捷達外觀上有了較大的變化,更家族化的外觀使大眾的車型更加統一了,更時尚年輕的外觀造型適應的人群也更廣了,內飾的配置、造型、用料都有很大的調節和提升,同時新增的1.5L發動機無論是動力和燃油經濟性都有所提升,可以說捷達的競爭力提升了很多。本站聲明:網站內容來源於http://www.auto6s.com/,如有侵權,請聯繫我們,我們將及時處理

    【其他文章推薦】

    網頁設計公司推薦不同的風格,搶佔消費者視覺第一線

    ※廣告預算用在刀口上,台北網頁設計公司幫您達到更多曝光效益

    ※自行創業缺乏曝光? 網頁設計幫您第一時間規劃公司的形象門面

    南投搬家公司費用需注意的眉眉角角,別等搬了再說!

    ※教你寫出一流的銷售文案?

    ※回頭車貨運收費標準

    ※別再煩惱如何寫文案,掌握八大原則!

  • 把寶馬開到0.9升油耗!我是如何做到的?

    把寶馬開到0.9升油耗!我是如何做到的?

    而想全程用電機行駛,就需要切換到Max eDrive模式。電量不足的情況下,你可以選擇Save Battery模式來存電。不得不說,在純電模式下,X1 25Le表現得非常安靜,加上因為完全靠電機驅動,峰值扭矩能全數輸出,所以起步階段非常迅速,完全不用擔心起步遲緩的問題。

    寶馬長期以來都是以直六+后驅的形象示人,但自從推出了UKL前置前驅平台之後,就出現了一些批評聲音,部分車迷表示接受不了。而寶馬的全新X1正是這個平台的產物,但不同的是,國產X1除了加長軸距外,還推出了以後驅為主的插電式混合動力車型。

    在行駛的過程中,X1 25Le會根據不同的eDrive模式切換不同的驅動形式。在Auto eDrive模式中,ECU會自行在純電、油電混合和純發動機驅動三個模式中自動切換。而想全程用電機行駛,就需要切換到Max eDrive模式。電量不足的情況下,你可以選擇Save Battery模式來存電。

    而在自動模式下,只要轉速超過2000轉,發動機就會自動介入,驅動前輪行駛。但要說有什麼不同,還真的沒必要去感受,因為整套系統運行得非常順暢。

    另外X1 25Le所使用的電池凈容量為10.7kWh,理論巡航里程是60km左右,但極限情況下可達80km。通過220V的電源接口充電,充滿電只需3.7小時。

    本站聲明:網站內容來源於http://www.auto6s.com/,如有侵權,請聯繫我們,我們將及時處理

    【其他文章推薦】

    ※自行創業缺乏曝光? 網頁設計幫您第一時間規劃公司的形象門面

    網頁設計一頭霧水該從何著手呢? 台北網頁設計公司幫您輕鬆架站!

    ※想知道最厲害的網頁設計公司"嚨底家"!

    ※別再煩惱如何寫文案,掌握八大原則!

    ※產品缺大量曝光嗎?你需要的是一流包裝設計!

    ※回頭車貨運收費標準

    台中搬家公司費用怎麼算?

  • Java編程技術之淺析JVM內存

    Java編程技術之淺析JVM內存

    JVM

    JVM->Java Virtual Machine:Java虛擬機,是一種用於計算設備的規範,它是一個虛構出來的計算機,是通過在實際的計算機上仿真模擬各種計算機功能來實現的。

    基本認知:

    • 1.JVM是用於運行Java代碼的假象計算機,主要有一套字節碼指令集,一組寄存器,一個棧,一個垃圾回收,堆 和 一個存儲方法域。
    • 2.JVM運行在操作系統之上,與硬件沒有直接的交互。

    Java程序執行過程:

    • 1.編譯->源文件由編譯器編譯成字節碼[ByteCode]

    Java 源文件—->編譯器—->字節碼文件

    • 2.運行->字節碼由java虛擬機解釋運行

    字節碼文件—->JVM—->機器碼

    Java類的加載步驟:

    • 1.加載->主要是完成3個階段的提交:

    通過類的全限定名來獲取定義類的二進制字節流
    將字節流所代表的靜態存儲結構轉化為方法區的運行時數據結構
    在內存中生成一個代表這個類的java.lang.Class對象,作為方法區這個類的各種數據的訪問入口。

    • 2.驗證->四個階段的檢驗動作:

    文件格式驗證
    元數據驗證
    字節碼驗證
    符號引用驗證

    • 3.準備->為類變量(static)分配內存並設置類變量的初始值。
    • 4.解析->將常量池內的符號引用轉為直接的引用
    • 5.初始化->按照static塊和static變量在文件中的出現順序,合併到 ()方法中。實例變量由 ()函數賦值。

    JVM線程實體:

    JVM線程->程序執行過程中的一個線程實體,JVM 允許一個應用併發執行多個線程。

    從此,我們應該意識到,在Java中,當提到線程就應該是指JVM線程和Java線程。其中JVM線程指的是Hotspot JVM 後台運行的系統線程,而且Hotspot JVM 中的 Java 線程與原生操作系統線程有直接的映射關係。

    ️[注意事項]:
    [1].當線程本地存儲、緩衝區分配、同步對象、棧、程序計數器等準備好以後,就會創建一個操作系統原生線程。
    [2].Java 線程結束,原生線程隨之被回收。操作系統負責調度所有線程,並把它們分配到任何可用的 CPU 上。
    [3].當原生線程初始化完畢,就會調用 Java 線程的 run() 方法。當線程結束時,會釋放原生線程和 Java 線程的所有資源

    特別需要知道的是,Hotspot JVM 後台運行的系統線程主要是:

    • 虛擬機線程->VM thread:等待 JVM 到達安全點操作出現。這些操作必須要在獨立的線程里執行,因為當堆修改無法進行時,線程都需要 JVM 位於安全點。這些操作的類型有:stop-theworld垃圾回收、線程棧 dump、線程暫停、線程偏向鎖(biased locking)解除。
    • 周期性任務線程->負責定時器事件(也就是中斷),用來調度周期性操作的執行
    • GC線程->支持 JVM 中不同的垃圾回收活動
    • 編譯器線程->在運行時將字節碼動態編譯成本地平台相關的機器碼
    • 信號分發線程->程接收發送到 JVM 的信號並調用適當的 JVM 方法處理

    JVM內存

    版權聲明:本文為博主原創文章,遵循相關版權協議,如若轉載或者分享請附上原文出處鏈接和鏈接來源。

    本站聲明:網站內容來源於博客園,如有侵權,請聯繫我們,我們將及時處理

    【其他文章推薦】

    ※自行創業缺乏曝光? 網頁設計幫您第一時間規劃公司的形象門面

    ※如何讓商品強力曝光呢? 網頁設計公司幫您建置最吸引人的網站,提高曝光率!

    ※綠能、環保無空污,成為電動車最新代名詞,目前市場使用率逐漸普及化

    ※廣告預算用在刀口上,台北網頁設計公司幫您達到更多曝光效益

    ※教你寫出一流的銷售文案?

    ※別再煩惱如何寫文案,掌握八大原則!

  • xlua中lua對象到c#對象的轉型

    xlua中lua對象到c#對象的轉型

    lua中的類型

    基礎類型

    #define LUA_TNIL		0
    #define LUA_TBOOLEAN		1
    #define LUA_TLIGHTUSERDATA	2
    #define LUA_TNUMBER		3
    #define LUA_TSTRING		4
    #define LUA_TTABLE		5
    #define LUA_TFUNCTION		6
    #define LUA_TUSERDATA		7
    #define LUA_TTHREAD		8
    

    變體(或者說子類型)

    /*
    ** tags for Tagged Values have the following use of bits:
    ** bits 0-3: actual tag (a LUA_T* value)
    ** bits 4-5: variant bits
    ** bit 6: whether value is collectable
    */
    
    /*
    ** LUA_TFUNCTION variants:
    ** 0 - Lua function
    ** 1 - light C function
    ** 2 - regular C function (closure)
    */
    
    /* Variant tags for functions */
    #define LUA_TLCL	(LUA_TFUNCTION | (0 << 4))  /* Lua closure */
    #define LUA_TLCF	(LUA_TFUNCTION | (1 << 4))  /* light C function */
    #define LUA_TCCL	(LUA_TFUNCTION | (2 << 4))  /* C closure */
    
    
    /* Variant tags for strings */
    #define LUA_TSHRSTR	(LUA_TSTRING | (0 << 4))  /* short strings */
    #define LUA_TLNGSTR	(LUA_TSTRING | (1 << 4))  /* long strings */
    
    
    /* Variant tags for numbers */
    #define LUA_TNUMFLT	(LUA_TNUMBER | (0 << 4))  /* float numbers */
    #define LUA_TNUMINT	(LUA_TNUMBER | (1 << 4))  /* integer numbers */
    
    
    /* Bit mark for collectable types */
    #define BIT_ISCOLLECTABLE	(1 << 6)
    

      lua中的對象都是用TValue來描述的,TValue中的tt_成員變量代表着這個TValue的類型。關於類型的具體定義,上面貼的代碼中的註釋中已經講的比較清楚了。
      一個lua對象的類型是由一個7位的bits描述的。比如一個整數,這個對象的類型就是0011000(24)表示這個對象是数字類型中的整形,是一個不可回收對象。

    C#如何獲取lua對象

      和c語言和lua交互其實沒啥本質區別,就是通過lua提供的c函數操作lua棧,直接從棧中取就可以了。區別在於如何把取到的值轉換為c#認識的值。

    如何在C#端描述這些類型

    簡介

      lua的類型中boolean、string、number這幾個類型是clr所認識的類型,所以clr就可以直接把這些類型拿過來用。具體就是直接調用Lua提供的lua_tonumber之類的c接口。
      lightUserData、table、function、userData、thread是C#不認識的類,需要通過某種標識(lua自帶的reference系統)來表示。

    boolean、string、number類

      這三個類上面已經說過了,直接用提供的接口轉就可以,下面寫幾個需要注意的點:

    1. string雖然也是一個引用類型,但是clr在拿到這個string的指針時,還需要將這個string的數據直接複製進clr中才算轉型結束(xlua也已經封裝好了,不用我們自己去複製)。
    2. 大部分類型轉型失敗的時候都不會報錯,而是會返回一個默認值。就拿將一個lua對象轉為int來說,最終是通過lua_tointegerx函數調用的,當lua對象不是number類型時,返回0:
    LUA_API lua_Integer lua_tointegerx (lua_State *L, int idx, int *pisnum) {
      lua_Integer res;
      const TValue *o = index2addr(L, idx);
      int isnum = tointeger(o, &res);
      if (!isnum)
        res = 0;  /* call to 'tointeger' may change 'n' even if it fails */
      if (pisnum) *pisnum = isnum;
      return res;
    }
    
    1. 當一個number類型是浮點數時,轉型整數不會進行取整操作,而是會直接返回0。因為lua默認對float轉int的操作模式LUA_FLOORN2I是0,代表碰見float轉int時返回0。
    /*
    ** try to convert a value to an integer, rounding according to 'mode':
    ** mode == 0: accepts only integral values
    ** mode == 1: takes the floor of the number
    ** mode == 2: takes the ceil of the number
    */
    int luaV_tointeger (const TValue *obj, lua_Integer *p, int mode) {
      TValue v;
     again:
      if (ttisfloat(obj)) {
        lua_Number n = fltvalue(obj);
        lua_Number f = l_floor(n);
        if (n != f) {  /* not an integral value? */
          if (mode == 0) return 0;  /* fails if mode demands integral value */
          else if (mode > 1)  /* needs ceil? */
            f += 1;  /* convert floor to ceil (remember: n != f) */
        }
        return lua_numbertointeger(f, p);
      }
      else if (ttisinteger(obj)) {
        *p = ivalue(obj);
        return 1;
      }
      else if (cvt2num(obj) &&
                luaO_str2num(svalue(obj), &v) == vslen(obj) + 1) {
        obj = &v;
        goto again;  /* convert result from 'luaO_str2num' to an integer */
      }
      return 0;  /* conversion failed */
    }
    

    userData

      userData主要是lua對c#對象的引用,這裏只簡單說一下。
      代表c#對象的userData主要分兩種。

    1. 把c#對象存在ObjectTranslator中,用下標作為引用(類似於lua中的reference)。
    2. 經過GC優化的結構體和枚舉,不存在ObjectTranslator中,而是把所有內容都打包到userdata中一起傳入lua中。比如一個Vector3,那麼xlua會把這個Vector3的x、y、z作為3個連續的float一起打包到userdata中。這樣就避免了c#層的裝箱、拆箱和gc操作。

    對table與function的引用簡介

      這兩個類型都是通過lua的reference系統來讓c#持有對lua對象的引用。

    lua reference系統

      c#就是通過這個系統來持有不認識的lua對象的。
      一共就兩個接口:

    1. luaL_ref:把棧頂元素加入一個lua的表中,並返回下標。
    2. luaL_unref:把一個下標所代表元素從表中刪除。

      這樣就可以用一個整數來讓lua外的環境持有這個lua對象。
    具體可以看下官方說明lua References

    luaBase類

      所有lua對象在c#中的基類,在初始化時通過luaL_ref生成lua對象的引用,在析構時通過luaL_unref移除引用。

    對table的引用

    LuaTable

      一般情況下table在C#中被包裝為LuaTable類,沒啥特別的,只是在LuaBase的基礎上增加了幾個常用的函數。比如Get、Set之類的,讓開發者可以避開一些不直觀的棧操作。

    Array、List、Dictionary

      這幾個都差不多。都是把table中的key和value全部拿出來,組成Array或Dictionaray。

    接口、其他類

      這兩種轉型是嘗試把這個table看作對應的接口或類。
      比如將一個table轉為IEnumberator就是把table轉為SystemCollectionsIEnumeratorBridge類(繼承了LuaBase、實現了IEnumerator的類,由Xlua生成),這個類實現了MoveNext和Reset。實現方法就是調用一下table中對應名稱的函數。

    對function的引用

      lua函數在c#中有兩種表示:

    LuaFunction

      LuaFunction和luaTable差不多,也是在LuaBase的基礎上增加了幾個常用函數,Call、Action之類的。

    DelegateBridge

      為什麼已經有LuaFunction還要一個DelegateBridge類?
      因為我們在c#中拿到一個lua函數時,大多數時候是要作為一個委託來時用的。DelegateBridge就是用來化簡這個轉型操作的。
      DelegateBridge的功能就是在持有lua函數引用的同時,將這個函數包裝成各種各樣的委託,讓整個轉型過程對開發人員無感知。
      下面是一個不使用DelegateBridge,自己轉型的例子,比較繁瑣:

    //將一個LuaFunction作為一個Action<int>使用
    //其實LuaFunction.Cast就是干這個的,這裏只是用簡單的方式表達出來
    public static Action<int> LuaFunctionToActionInt(XLua.LuaFunction luaFunction)
    {
        //由於luaFunction已經提供了Call操作封裝了函數調用的各種棧操作,所以我們這裏只需要用一個Action<int>把這個操作包裝起來即可
        return (x) =>
        {
            luaFunction.Call(x);
        };
    }
    
    public static void Test()
    {
        XLua.LuaEnv luaEnv = new XLua.LuaEnv();
        object[] rets = luaEnv.DoString("return function(x) CS.UnityEngine.Debug.LogError(\"print x: \"..x) end");
        var luaFunction = (XLua.LuaFunction)rets[0];
        Action<int> actionInt = LuaFunctionToActionInt(luaFunction);
        actionInt(10);
    }
    

    DelegateBridge重要成員

    xlua在將lua函數轉型的時候做了什麼

    Tips

    1. 通過ObjectTranslator.getDelegateUsingGeneric生成委託時,會對返回值和參數進行不為值類型的約束。因為值類型在il2cpp下會有jit異常。這也是為什麼我們發現有的委託類型不用註冊也可以使用,但是有的就不行。
    2. 在編輯器模式下,沒有進行代碼生成時,會通過Emit直接生成一個XLuaGenDelegateImplx類,內容和通過代碼生成后的DelegateBridge一樣,而不是全部通過反射來進行轉型。讓沒有進行代碼生成時的環境和真機環境更接近。
    3. DelegateBridge一般不會被直接引用,而是被bindto中的委託生成的閉包引用和被delegate_bridges作為弱引用持有。當一個DelegateBridge的bindto中的委託沒有被任何對象引用時,這個DelegateBridge就會在下次gc時被gc掉。

    其他

      這裏主要寫了常用lua類型轉型的簡介和一些關鍵點。可能不夠全面和細節。
      如果有什麼錯誤或者問題可以在下面留言。

    本站聲明:網站內容來源於博客園,如有侵權,請聯繫我們,我們將及時處理

    【其他文章推薦】

    網頁設計一頭霧水該從何著手呢? 台北網頁設計公司幫您輕鬆架站!

    ※台北網頁設計公司全省服務真心推薦

    ※想知道最厲害的網頁設計公司"嚨底家"!

    ※推薦評價好的iphone維修中心

    網頁設計最專業,超強功能平台可客製化

    ※別再煩惱如何寫文案,掌握八大原則!

  • golang連接達夢數據庫的一個坑

    golang連接達夢數據庫的一個坑

    golang連接達夢數據庫的一個坑

    有一次項目中用到了達夢數據庫,後端語言使用的golang,達夢官方並未適配專門的golang連接方式,正一籌莫展的時候發現達夢提供了odbc的連接,這樣可以使用類似mssqlodbc連接方式連接達夢數據庫。

    使用的達夢數據庫版本為DM8

    達夢數據庫開啟odbc連接

    參考博客1、參考博客2

    參照上面兩個博客內容配置odbc連接

    golang代碼

    一些參考文檔:

    package main
    import (
    	"fmt"
    	_ "github.com/alexbrainman/odbc"  // google's odbc driver
    	"github.com/go-xorm/xorm"
    	"xorm.io/core"
    	"github.com/axgle/mahonia"
    )
    
    type Address struct {
        Addressid int64 `xorm:"addressid"`
        Address1 string `xorm:"address1"`
        Address2 string `xorm:"address2"`
        City string `xorm:"city"`
        Postalcode string `xorm:"postalcode"`
    }
    
    // 字符串解碼函數,處理中文亂碼
    func ConvertToString(src string, srcCode string, tagCode string) string {
        srcCoder := mahonia.NewDecoder(srcCode)
        srcResult := srcCoder.ConvertString(src)
        tagCoder := mahonia.NewDecoder(tagCode)
        _, cdata, _ := tagCoder.Translate([]byte(srcResult), true)
        result := string(cdata)
        return result
    }
    
    func main() {
    	engine, err := xorm.NewEngine("odbc", "driver={DM8 ODBC DRIVER};server=127.0.0.1:5236;database=DM;uid=SYSDBA;pwd=password;charset=utf8")
    	if err != nil {
    		fmt.Println("new engine got error:", err)
    		return
    	}
    	engine.ShowSQL(true)//控制台打印出生成的SQL語句;
    	engine.Logger().SetLevel(core.LOG_DEBUG)
    	if err := engine.Ping(); err != nil {
    		fmt.Println("ping got error:", err)
    		return
    	}
    
    	// 1) sql查詢
    	results, err := engine.Query("select addressid, address1, address2, city, postalcode from person.address limit 5 offset 2")
    	if err != nil {
    		fmt.Println("查詢出錯:", err)
    		return
    	}
    	for i, e := range results {
    		fmt.Printf("%v\t", i)
    		for k, v := range e {
    			// 達夢數據庫中文默認為gbk
    			fmt.Printf("%v=%v\t", k, ConvertToString(string(v), "gbk", "utf-8"))
    		}
    		fmt.Printf("\n")
    	}
    	fmt.Println("*******************************")
    	// 2) 使用struct 映射結果
    	engine.SetMapper(core.SameMapper{})
    	var sliceOfAddress []Address
    	err = engine.Table("person.address").Limit(5, 0).Find(&sliceOfAddress)
    	if err != nil {
    		fmt.Println("查詢出錯:", err)
    		return
    	}
    	for i,e := range sliceOfAddress {
    		e.Address1 = ConvertToString(e.Address1, "gbk", "utf-8")
    		e.Address2 = ConvertToString(e.Address2, "gbk", "utf-8")
    		e.City = ConvertToString(e.City, "gbk", "utf-8")
    		fmt.Printf("%v=%v\n", i, e)
    	}
    }
    

    1)解決 golang.org/x/ 下包下載不下來的問題

    https://studygolang.com/articles/19051?fr=sidebar

    https://studygolang.com/articles/24075?fr=sidebar

    2)無效的表或視圖名[person.address](這個也是最坑的一點)

    原因:我們使用的是odbc的方式連接達夢數據庫,實際上使用的是mssql的驅動,第一個1) SQL查詢結果是OK的,但是2) struct 查詢就會報錯:

    [xorm] [info]  2020/06/08 16:52:40.183731 [SQL] SELECT TOP 5 "addressid", "address1", "address2", "city", "postalcode" FROM "person.address"
    查詢出錯: SQLPrepare: {42S02} 第1 行附近出現錯誤:
    無效的表或視圖名[person.address]
    

    通過日誌發現,xorm吧沒一個字段和表名都添加上了雙引號:SELECT TOP 5 "addressid", "address1", "address2", "city", "postalcode" FROM "person.address"這個sql在mssql中執行是沒問題的,但是放到達夢數據庫中就會報錯,因為達夢不支持雙引號包裹字段、命名空間、表名:

    這樣就很坑爹了,我嘗試着修改結構體的xorm:"addressid"去掉其中的雙引號,但是問題還存在,最後想到打印出來的sql中待了雙引號,說明xorm後台還是拼接的sql語句,如果找到拼接sql語句的代碼然後去掉其中的雙引號不是就好了么。於是跟蹤代碼查找拼接sql的代碼:

    解決方式一)

    1、engine.Table("person.address").Limit(5, 0).Find(&sliceOfAddress)

    先找到engin模塊的Find()方法:

    代碼路徑:src.github.com/go-xorm/xorm/engine.go

    // Find retrieve records from table, condiBeans's non-empty fields
    // are conditions. beans could be []Struct, []*Struct, map[int64]Struct
    // map[int64]*Struct
    func (engine *Engine) Find(beans interface{}, condiBeans ...interface{}) error {
    	session := engine.NewSession()
    	defer session.Close()
    	return session.Find(beans, condiBeans...)
    }
    

    發現其實調用的是session.Find() 方法

    2、src.github.com/go-xorm/session_find.go

    // Find retrieve records from table, condiBeans's non-empty fields
    // are conditions. beans could be []Struct, []*Struct, map[int64]Struct
    // map[int64]*Struct
    func (session *Session) Find(rowsSlicePtr interface{}, condiBean ...interface{}) error {
    	if session.isAutoClose {
    		defer session.Close()
    	}
    	return session.find(rowsSlicePtr, condiBean...)
    }
    

    發現實際上調用的是session.find(rowsSlicePtr, condiBean...)

    func (session *Session) find(rowsSlicePtr interface{}, condiBean ...interface{}) error {
    	
    	defer session.resetStatement()
    
    	// 代碼省略 。。。
    
    	var sqlStr string
    	var args []interface{}
    	var err error
        // 此處就是拼接sql的代碼
    	if session.statement.RawSQL == "" {
    		// 代碼省略 。。。
    	} else {
    		sqlStr = session.statement.RawSQL
    		args = session.statement.RawParams
    	}
        // 獲得配置信息判斷當前數據庫類型
    	uri := session.engine.Dialect().URI()
    	// 判斷當前是否是達夢數據庫
    	if uri.DbType == "mssql" && uri.DbName == "DM" {
    		newSqlStr := strings.Replace(sqlStr, "\"", "", -1) // 去掉雙引號
    		sqlStr = newSqlStr
    	}
    
    	// 代碼省略 。。。
    	return session.noCacheFind(table, sliceValue, sqlStr, args...)
    }
    

    通過session.engine.Dialect().URI()獲得配置信息,這段代碼怎麼來的,實際上是在xorm.NewEngine()的時候會解析配置信息,並賦值給enginedialect屬性,代碼位置:src.github.com/go-xorm/xorm/xorm.go

    engine := &Engine{
    		db:             db,
    		dialect:        dialect,
    		Tables:         make(map[reflect.Type]*core.Table),
    		mutex:          &sync.RWMutex{},
    		TagIdentifier:  "xorm",
    		TZLocation:     time.Local,
    		tagHandlers:    defaultTagHandlers,
    		cachers:        make(map[string]core.Cacher),
    		defaultContext: context.Background(),
    	}
    

    找到sql之後去掉雙引號即可,因為做了判斷只有是達夢的類型數據庫的時候才修改,所以不會影響其他類型的數據庫。至此問題得到了解決。

    解決方式二)

    上面的方式一是一種解決方案,其實有更簡便的,因為我們在創建engine的時候已經確定了dialect類型為dialect_mssql,找到src.github.com/go-xorm/xorm/dialect_mssql.go找到方法Quote稍作修改即可:

    func (db *mssql) Quote(name string) string {
    	fmt.Println("Quote -> ", db.URI().DbName) // DM
    	if  db.URI().DbName == "DM" { // 如果是達夢數據庫不添加雙引號
    		return name
    	}
    	return "\"" + name + "\""
    }
    

    這樣,是在拼接SQL之前修改了邏輯,二方式一是在拼接之後再去掉引號,方式二更方便一點。
    注意:
    查閱最新的文檔,發現最新的xorm.io/core v1.0.1版本已經支持使用engine.Dialect().SetQuotePolicy(core.QuotePolicyNone)來設置引號策略。如果你使用的是該版本,直接設置即可。
    Dialect結構體、QuotePolicy常量值
    輸出結果:

    [xorm] [info]  2020/06/08 17:14:18.061667 PING DATABASE odbc
    [xorm] [info]  2020/06/08 17:14:19.315349 [SQL] select addressid, address1, address2, city, postalcode from person.address limit 5 offset 2
    0       ADDRESSID=3     ADDRESS1=青山區青翠苑1號        ADDRESS2=       CITY=武漢市青山區       POSTALCODE=430080
    1       ADDRESSID=4     ADDRESS1=武昌區武船新村115號    ADDRESS2=       CITY=武漢市武昌區       POSTALCODE=430063
    2       ADDRESSID=5     ADDRESS1=漢陽大道熊家灣15號     ADDRESS2=       CITY=武漢市漢陽區       POSTALCODE=430050
    3       ADDRESSID=6     ADDRESS1=洪山區保利花園50-1-304 ADDRESS2=       CITY=武漢市洪山區       POSTALCODE=430073
    4       ADDRESSID=7     ADDRESS1=洪山區保利花園51-1-702 ADDRESS2=       CITY=武漢市洪山區       POSTALCODE=430073
    *******************************
    [xorm] [info]  2020/06/08 17:14:19.324291 [SQL] SELECT TOP 5 addressid, address1, address2, city, postalcode FROM person.address
    0={1 洪山區369號金地太陽城56-1-202  武漢市洪山區 430073}
    1={2 洪山區369號金地太陽城57-2-302  武漢市洪山區 430073}
    2={3 青山區青翠苑1號  武漢市青山區 430080}
    3={4 武昌區武船新村115號  武漢市武昌區 430063}
    4={5 漢陽大道熊家灣15號  武漢市漢陽區 430050}
    

    參考文檔

    xorm的操作指南

    xorm的pkg文檔

    go語言中文文檔

    本站聲明:網站內容來源於博客園,如有侵權,請聯繫我們,我們將及時處理

    【其他文章推薦】

    台北網頁設計公司這麼多該如何選擇?

    ※智慧手機時代的來臨,RWD網頁設計為架站首選

    ※評比南投搬家公司費用收費行情懶人包大公開

    ※回頭車貨運收費標準

    網頁設計最專業,超強功能平台可客製化

    ※別再煩惱如何寫文案,掌握八大原則!

  • 國產三巨頭15台轎車/SUV點評 總有一台適合你

    國產三巨頭15台轎車/SUV點評 總有一台適合你

    38萬11月銷量10105輛H8、H9的上市問題產能問題等導致兩個好数字的產品銷量表現不佳,但H7很快就邁進萬輛俱樂部,也許能讓長城在中型SUV身上看到了希望。比起H6高達七萬多輛的銷量,H7的萬台銷量的意義一點也不小。15萬-20萬元這個價位區間一直被合資把持着,被稱為自主品牌難以逾越的天花板,而H7的定價正是位於這個區間,並且取得了初步的成功,這個成功不僅對於長城,甚至對於整個自主品牌都是極大的鼓勵。

    為什麼有些車甚至不停加價都供不應求,而有些車一再優惠卻門可羅雀?為什麼同是國產車企,以下這些車型卻月月熱賣?

    很多網友在評論中留言:“美編你覺得CS15這車怎樣?”“CS35現在還值得買嗎?”“CS75哪個配置好啊?”“H6那麼多款我應該買哪款?”“吉利博越很好看但我們這邊老是沒車怎麼辦?”

    面對這些潮水般的相似問題,美編恨自己不能變成千手觀音回復大夥,於是整理出這篇長長的文章來作為解答。如果這裏剛好解答了你或者你的朋友類似的問題,在評論區留言或者把這篇文章傳遞給他們好不好?

    長安CS75

    指導價:9.28-15.88萬

    11月銷量:21978輛

    長安CS75面對榮威RX5以及吉利博越的熱銷,絲毫沒有影響其銷量,11月份銷量更是達到了21978輛,這也可以說明消費群體不同,長安CS75更實用外觀設計也偏沉穩。也不能忽略購置稅減半金融政策,臨近年底,也能刺激消費者購車慾望,而長安CS75也最大功臣莫過於1.5T車型,帶動着長安CS75銷量一路攀升。

    長安CX70

    指導價:6.89-8.49萬

    11月銷量:10125

    長安CX70從銷量過萬以來,一直維持在一萬輛/月左右。銷量難突破主因,應該是缺乏自動擋車型。畢竟現在成熟路況駕馭自動擋會更舒適,就算是新手駕馭也不會手忙腳亂。其次還是同尺寸配置更高的自主品牌車型越來越多,產品競爭力也越來越強,CX70真該升級換代了。

    長安CS35

    指導價:7.89-9.89萬

    11月銷量:13902輛

    2012年10月底上市至今4年過去了,CS35外觀就沒有改變過,不斷優化的小細節包括內飾的變化,好開的手動車型,易用舒適的駕駛體驗乃至各種實用的配置,讓CS35即使面對後來者哈弗H2、瑞風S3雖然銷量有所下降但依然有着不錯的成績。

    長安CS15

    指導價:5.79-7.79萬

    11月銷量:10430輛

    看完CS15你會明白,為什麼CS35沒有進行外觀改款了—兩款車車身尺寸相當,CS15價格還便宜些,雖然從型號來說跟CS35相差了20代(CS15→ CS35,開玩笑的)但其實對於真正買車的用戶來說他們差別真的是價格和配置了。CS15還有望搭載1.0T發動機,配合DCT雙離合變速箱,能爆發出最多功率82千瓦和170牛·米的最大扭矩,相比2016年頭髮布車型上那套1.5L發動機的78.5最大功率和145牛·米最大扭矩,動力強勁不少。11月份CS15銷量也突破了1萬輛。自動擋車型的上市也直接提高長安CS15銷量,畢竟擁堵的城市路況駕駛自動擋更加舒適,年輕消費群體也更愛自動擋車型。

    悅翔(系列)

    指導價:4.69(V3)-8.69萬(V7)

    11月銷量:10263輛

    長安悅翔系列可謂是國產轎車中不錯的車型,美編身邊也有幾個朋友在用,相比艾瑞澤5和新遠景來說,這個車系特點是保留了長安一貫以來皮實耐用的特點,手動擋車型即使是女司機也能很好駕馭。

    逸動

    指導價:8.09-24.99萬

    11月銷量:10571

    相比皮實耐用的悅翔來說,逸動更經典老道的外形,以及勉強夠用的配置,很大程度上限制了銷量增長,所以本月逸動銷量同比下跌了33%。或許長安應該向最近頻繁曝光的吉利學習,提高更新換代的速度以及新增多些配置,至少能讓人覺得誠意滿滿。但整體來說逸動綜合能力並不差。

    11月,長安汽車旗下已經有8款車型銷量過萬,這個成績也相當不錯。希望長安汽車加緊對新車型的開發,趁着市場反應熱烈推出CS95這樣的重量級車型,其次在轎車市場多增加配置乃至像奔奔mini那樣提供越級的換擋撥片,應該可以更好刺激目前成熟的消費市場,畢竟作為老牌車企,相信長安的技術儲備還是很驚人的。

    我是一條細長的分割線

    難怪長城這麼积極的公布銷量數據,因為H6在11月份的銷量竟然為70292台,七萬多台是什麼概念啊,抵得上一些小廠一年的總銷量了。除了H6之外,H2、H7的銷量也算是爆表了。而且今年長城的累計銷量已經達到了92萬輛,距離2017年還有一個月,長城今年完成百萬銷量的目標應該是板上釘釘的事情。下面我們開始對重點車型點評。

    哈弗H6

    指導價:8.88-16.28萬

    11月銷量70292輛

    10月份H6的銷量為56667輛,那時候我和朋友們都在討論,這應該就是最高了,就算以後藉著購置稅結束的大潮,它也不會增長太多了。萬萬沒想到啊,一個月之後就被打臉了,今年1-11月哈弗H6已經累銷售50萬零188輛,同比增長51.26%,這也就意味着,就算12月份H6的銷量為0(開玩笑這當然是不可能的),也不能阻止H6成為中國SUV的銷量冠軍,作為中國乃至世界上銷量最好的SUV,H6的銷量神話將會被人傳頌。

    如果把H6比作一個人的話,那麼H6絕對是個“人精”,無論外在內在都在不停變化適應各種人群,眾口難調在H6身上真的是個反面例子,因為到目前為止,算上H6藍標、紅標運動版以及H6 Couple、H6升級版,就是在產在銷的車型,已經達到了63款!加上停售車型,市面上能夠買到的哈弗H6已經有85款,實在誇張!

    所以H6銷量有這樣的銷量是完全有基礎的,例如H6 coupe它和H6完全不是同一台車,但是它的銷量也會被統計在H6的銷量範圍之內。據估計H6 coupe月銷量佔H6銷量的20%-30%。

    哈弗H7

    指導價:14.98-19.38萬

    11月銷量10105輛

    H8、H9的上市問題產能問題等導致兩個好数字的產品銷量表現不佳,但H7很快就邁進萬輛俱樂部,也許能讓長城在中型SUV身上看到了希望。比起H6高達七萬多輛的銷量,H7的萬台銷量的意義一點也不小。

    15萬-20萬元這個價位區間一直被合資把持着,被稱為自主品牌難以逾越的天花板,而H7的定價正是位於這個區間,並且取得了初步的成功,這個成功不僅對於長城,甚至對於整個自主品牌都是極大的鼓勵。

    H7+H7L,7座+5座,同時還有豐富的配置,超高的顏值,精緻的內飾,實惠的價格,所以H7也取得了很好的銷量,H7L的車身尺寸4900*1925*1785mm,軸距為2850mm,這樣H7L看起來更加大氣,當GS8宣稱要做同級別標杆的時候,H7的銷量已經上萬了。所以就現在而言,H7算是國內首款比較成功的中型SUV。

    哈弗H2

    指導價:8.68-12.88萬

    11月銷量26039輛

    H2目前也是哈弗最成功的車型之一,雖然兩萬多的銷量沒有辦法和自己大哥H6的銷量比,但是和“外人”比起來,26039輛銷量也是非常成功的。H2是美編比較喜歡的一款車型,雖然H6看着感覺更實惠,但是比起H6,我更願意選擇H2。同時伴隨着H2s的上市,H2的銷量還會走高。

    哈弗H5

    指導價:9.48-16.38萬

    11月銷量2082輛

    H5的銷量比較穩定,這車其實說配置也勉強夠用,幾乎萬年不變的外觀真的沒什麼特別。這樣的銷量一是和它越野的定位有關係,另外就是H5全系是2.0L和2.0T發動機,不會受到購置稅優惠的影響。其實H5絕對是哈弗裏面性價比最高的車型之一,非承載式車身+分時四驅,有一定的越野能力,但是價格卻比較實惠。

    哈弗H8

    指導價:18.88-25.68萬

    11月銷量676輛

    哈弗H8是一款銷量不高的車型。不過H8雖然銷量不高,畢竟這是哈弗走向高端的第一步,間接的拉升了哈弗的品牌形象,同時為H7的成功積累了不少經驗。

    至於長城的轎車,也沒啥好說的,除了能在路上看到幾年前的C30之外,C50幾乎很難在市面上看得到,變成了一台限量版車型。因為長城SUV的重心傾斜,轎車已經被邊緣化了…..

    我是一條細長的分割線

    和國內“偏科生”哈弗不一樣的是,吉利屬於那種體美勞全面發展、各項素質綜合能力都比較好的學生,吉利在11月的銷量首次突破10萬輛大關,轎車和SUV均衡發展,其中有6款車型月銷量上萬。

    吉利11月份的總銷量為102422輛,去年同期為51367,同比增長99.4%,銷量幾乎翻倍。旗下主力車型個個生龍活虎的,銷量增長很快。

    帝豪

    指導價:6.98-24.98萬

    11月份銷量28842輛

    帝豪11月銷量28842輛,10月份的銷量25015輛,9月份的銷量20198輛,每月3000-5000輛增幅很嚇人,自主轎車能拿出將近3萬輛的銷量,實在驚天地泣鬼神。我們都知道自主轎車在和合資轎車的對抗中,幾乎全軍覆沒,像朗逸、軒逸、福睿斯、英朗等這些合資轎車,月銷三萬台以上都不是什麼難事。

    但是自主轎車月銷量能上萬的車型目前也只有帝豪、逸動、艾瑞澤5、遠景、比亞迪F3等,不過這些車子的月銷量僅僅在在萬台以上,要知道三五十萬的奧迪A6L、寶馬5系也能月銷上萬啊!轎車前10的銷量幾乎沒有自主轎車。

    因轎車競爭太激烈,合資轎車價格下壓的太狠,幾乎是密不透風的車型定位,自主品牌的轎車生存壓力太大、所以自主品牌在轎車領域的投入也就較少,導致轎車領域自主品牌呼聲越來越低。不過帝豪的熱賣讓自主轎車的旗幟重新立起,在合資車型上不至於全軍覆沒。畢竟有着幾年歷史的帝豪口碑很不錯,所以得到了大家的熱捧。

    博越

    指導價:9.88-15.78萬

    11月份銷量18402輛

    博越11月銷量18402輛,10月銷量16779輛,9月銷量14053輛,8月銷量10130輛,可以看出來博越隨着產能的逐步釋放,銷量也在穩步上升。作為現階段自主品牌中綜合實力最強的SUV之一,博越的熱銷是板上釘釘的事情。

    不過還是因為吉利產能的限制,導致吉利旗下的博越也是不能按時交車,等車是家常便飯,甚至還出現了變相加價的行為,如果吉利可以儘快把產能問題解決了,那麼博越的銷量還會更高。

    遠景SUV

    指導價:7.49-10.19萬

    11月份銷量10942輛

    其實遠景SUV從公布售價的時候就註定了銷量不會太差,因為7.49萬元的起售價。還標配ESp、上坡輔助、陡坡緩降、真皮方向盤、日間行車燈等,同時車內空間足夠大,動力系統也比較可靠,底盤調教也很過關,所以月銷上萬不是夢。

    帝豪GL

    指導價:7.88-11.38萬

    11月份銷量10010輛

    作為吉利3.0時代的重要作品之一,帝豪GL不負眾望,這款被大家普遍看好的車型找到了它應該處於的位置,達到了上萬的水準。GL憑藉較大的車身,更高的顏值,更寬裕的乘坐空間,取得了不錯的成績。

    另外還有遠景轎車、帝豪GS和博瑞,都有着不錯的表現。而且現在吉利的產能也特別吃緊,訂單甚至都排到了兩三個月開外了,所以只要吉利能把產能問題解決了,銷量還會進一步走高,畢竟國內的汽車市場容量真的是太大了。本站聲明:網站內容來源於http://www.auto6s.com/,如有侵權,請聯繫我們,我們將及時處理

    【其他文章推薦】

    ※廣告預算用在刀口上,台北網頁設計公司幫您達到更多曝光效益

    ※別再煩惱如何寫文案,掌握八大原則!

    ※教你寫出一流的銷售文案?

    ※超省錢租車方案

    ※廣告預算用在刀口上,台北網頁設計公司幫您達到更多曝光效益

    ※產品缺大量曝光嗎?你需要的是一流包裝設計!

    ※回頭車貨運收費標準

  • 9.6萬起國內才有的合資車 為什麼更值得買?

    9.6萬起國內才有的合資車 為什麼更值得買?

    價格低、配置挺高、空間也比較夠用,所以綜合實力不錯。廣汽本田-凌派指導價:10。98-14。98萬凌派採用了1。8L i-VTEC發動機,這款機型在本田的其他車型上已經服役多年,供油方式是多點電噴,雖然是這樣,但是它的動力輸出一點不差,也很耐用。

    本站聲明:網站內容來源於http://www.auto6s.com/,如有侵權,請聯繫我們,我們將及時處理

    【其他文章推薦】

    ※別再煩惱如何寫文案,掌握八大原則!

    網頁設計一頭霧水該從何著手呢? 台北網頁設計公司幫您輕鬆架站!

    ※超省錢租車方案

    ※教你寫出一流的銷售文案?

    網頁設計最專業,超強功能平台可客製化

    ※產品缺大量曝光嗎?你需要的是一流包裝設計!

    台中搬家遵守搬運三大原則,讓您的家具不再被破壞!

  • 爆款SUV的兩個小兄弟之間有什麼區別?

    爆款SUV的兩個小兄弟之間有什麼區別?

    藍標版本的H2除了前臉的進氣格柵造型不太同,保留了藍標哈弗家族的多邊形大嘴以外,整體設計語言與紅標版本保持一致,都給人以一種偏向穩重厚實的形象。內飾:新創意VS家族風哈弗H2s的內飾設計元素源自手風琴,初次見到這款內飾的時候會覺得這不是哈弗品牌,儘管方向盤是四幅式,但別緻的造型也不會使得哈弗H2s的內飾看上去老氣,相反更具有一種時尚和個性。

    哈弗H2s與H2到底啥關係?

    月銷七萬多輛哈弗H6的哈弗品牌顯然不太滿足僅憑藉一款車打天下,哈弗最近出了一款名為H2S的小型SUV,作為哈弗H2的“兄弟車型”,此車一出,很多網友在後台給小編留言,問這車是不是H2的改款車型,與現款的哈弗H2之間應該如何抉擇?今天就帶着疑問,給各位有意向於哈弗H2和H2S兩款車之間的朋友進行一番解答。

    哈弗H2s

    指導價格:8.38-10.28萬

    H2s是否就是哈弗H2的改款?相信這是大家最為關心的問題,小編在這裏明確回答,哈弗H2s並不是H2的改款,而是一款完全獨立開發的全新小型SUV。

    而且哈弗H2s的設計團隊可謂是來頭不小,它的設計總監pierre Leclercq,曾負責設計第一代寶馬X6和第二代寶馬X5,現在任職長城汽車全球設計總監。pierre入駐長城汽車,也有望在以後的日子里提升哈弗品牌的車型整體設計水平。

    外觀:H2S更顯年輕

    H2s的外觀設計靈感源自2015年上海車展哈弗品牌發布的Concept B以及Concept R兩款概念車型,而實車誕生之後我們可以看出哈弗H2s在概念車的還原程度上保留了相當高的水平。

    無論是紅標版本抑或是藍標版本,哈弗H2s都显示出了一種時尚感非常充沛的視覺感受。藍標版本使用了更多銳利的角度與線條,讓整個前臉顯得非常具有攻擊性。而紅標版則用了更加粗壯的風格,提升了整車的力量感。

    而哈弗H2的外觀則顯得與自家銷量王者H6十分的相近,紅標版H2外觀敦實圓潤,整體看上去四平八穩,不仔細分辨的話乍一眼看上去就像是一台小了半號的H6。

    藍標版本的H2除了前臉的進氣格柵造型不太同,保留了藍標哈弗家族的多邊形大嘴以外,整體設計語言與紅標版本保持一致,都給人以一種偏向穩重厚實的形象。

    內飾:新創意VS家族風

    哈弗H2s的內飾設計元素源自手風琴,初次見到這款內飾的時候會覺得這不是哈弗品牌,儘管方向盤是四幅式,但別緻的造型也不會使得哈弗H2s的內飾看上去老氣,相反更具有一種時尚和個性。

    哈弗H2的話或許會顯得比較平淡,平直簡練的線條設計與哈弗家族汽車產品非常相近,沒有過多的亮點可言。但是這種設計也有一種好處,便是可以有着非常廣泛的接受人群,可以輕鬆的做到老少咸宜。

    空間&動力:差別都不大

    同樣是定位於小型SUV,哈弗H2s與哈弗H2使用了同一台1.5T渦輪增壓發動機,最大馬力150匹,峰值扭矩210牛米。但值得一提的是,在哈弗H2s身上搭載的是一套來自格特拉克的7速濕式雙離合變速箱,在這個價位來說使用7速雙離合的車型少之又少,看得出來長城汽車這次挺捨得下本的。

    哈弗H2s車身尺寸為4416*1772*1638mm,軸距2550mm而哈弗H2的三圍尺寸為4335*1814*1695mm軸距為2560mm;兩台車的尺寸可謂是半斤八兩,在乘坐空間上,後排表現都屬於比較局促的類型。

    購買建議:考慮小型SUV的消費者一般來說對於乘坐空間的訴求並不會特別嚴苛,個人推薦可以考慮最新出的H2s,從設計角度和配件供應角度來看,哈弗H2s將有可能成為哈弗品牌的轉型之作。

    加之哈弗品牌一貫而為之的內飾用料比較厚道的做法,哈弗H2s給人的印象高檔感並不差,頂配車型不過是十萬出頭的價格,可以說也符合當下大多數人購車的預算。

    全文總結:本次對比主要是為了解答眾多人的問題,那就是哈弗H2s與哈弗H2是彼此間獨立的關係。

    而且,從哈弗H2s的推出以及哈弗高端子品牌WEY的發布可以看出,未來哈弗將會進一步優化和豐富產品線布局。相信憑藉這強大的設計團隊和合理的市場定位,未來哈弗爆款的車型將不會僅僅只有哈弗H6一款。本站聲明:網站內容來源於http://www.auto6s.com/,如有侵權,請聯繫我們,我們將及時處理

    【其他文章推薦】

    ※教你寫出一流的銷售文案?

    ※廣告預算用在刀口上,台北網頁設計公司幫您達到更多曝光效益

    ※回頭車貨運收費標準

    ※別再煩惱如何寫文案,掌握八大原則!

    ※超省錢租車方案

    ※產品缺大量曝光嗎?你需要的是一流包裝設計!

    ※推薦台中搬家公司優質服務,可到府估價

  • 顏值 動力 舒適 操控 這些十多萬的車子都可以滿足你

    顏值 動力 舒適 操控 這些十多萬的車子都可以滿足你

    6L 110馬力、1。2T 110馬力、1。4T 131馬力和1。4T 150馬力,匹配5擋手動和6擋手自一體和7擋雙離合變速箱。1。6L車型的高爾夫和1。6L的308S一樣,都是保守的選擇。1。2T和1。4T車型的雙離合變速箱相對於308S的6AT來說,換擋更快,油耗表現更好,同時提速也很好,駕駛感受非常不錯,要不然也不會賣的那麼好了。

    其實買了車開的最多的還是自己,所以一台車有一個比較好的操控確實是駕駛者的福音。作為一個熱血青年,給你一台“老年車”軒逸,那底盤你怎麼能忍受的了?

    所以今天小編給大家介紹幾款不但有一些駕駛激情,同時家人坐着也會比較舒服的車子。可以說即爽了自己,同時又能很好的保證家人乘坐的舒適性。

    東風標緻-標緻308S

    11.27-17.97萬

    308S的車身尺寸為4255*1820*1480mm,軸距為2620mm。屬於標準的緊湊型兩廂車,和同級別轎車比起來,寬度尺寸較大,長度和高度差別較小,所以308S看起來比較低矮。308S車頭大燈組看起來炯炯有神,車身側面比較簡介,腰線利落,營造出動感的效果。

    308S的動力系統為1.6L 117馬力/1.2T 136馬力+5擋手動/6擋手自一體,1.6T 167馬力+6擋手自一體。保守的選擇就是1.6L車型,雖然動力表現一般,但是好在底盤還是特別紮實。

    1.6T車型絕對是最推薦的,動力十足,油耗很低,發動機是標緻的明星發動機。很多主力車型都有它的身影,1.6T車型目前也有着一兩萬的優惠,目前來看這款車還是不錯的。另外308S的底盤向舒適性做出了一些妥協,乘坐起來並不會感到很顛簸。

    一汽-大眾-高爾夫

    12.19-23.99萬

    普通高爾夫的車身尺寸為4255*1799*1452mm,軸距為2637mm,GTI車型就不做過多介紹,銷量很少。高爾夫的外觀和308S差不多,都是看起來很緊湊的兩廂車,不同的就是308S看起來更柔美,高爾夫則更陽剛。

    高爾夫的發動機為1.6L 110馬力、1.2T 110馬力、1.4T 131馬力和1.4T 150馬力,匹配5擋手動和6擋手自一體和7擋雙離合變速箱。1.6L車型的高爾夫和1.6L的308S一樣,都是保守的選擇。

    1.2T和1.4T車型的雙離合變速箱相對於308S的6AT來說,換擋更快,油耗表現更好,同時提速也很好,駕駛感受非常不錯,要不然也不會賣的那麼好了。雖然大眾的定價更高,但是優惠也更大,綜合下來和308S差不多。

    長安馬自達-馬自達3 昂克賽拉

    11.49-15.99萬

    兩廂版的昂克賽拉車身尺寸為4461*1795*1474mm,三廂版的車身尺寸為4582*1795*1458mm,軸距同為2700mm。 昂克賽拉的外觀自然不必介紹,絕對是數一數二的。單憑這外觀就會有很多人買單的。

    昂克賽拉的動力系統為1.5L 117馬力+6擋手動和6擋手自一體,2.0L 158馬力+6擋手自一體。以前經常有人唱衰昂克賽拉,覺得它小眾,價格貴,優惠少,註定不會熱銷。但是實力強的选手總會發光的。

    目前昂克賽拉的月銷量穩穩在萬台以上,可以說最終還是得到了大家的肯定,和本田地球夢不同的是,昂克賽拉的創馳藍天技術更多的是側重整個車子,所以昂克賽拉駕駛起來很容易就達到了人車合一的狀態,開起來非常順手。不過昂克賽拉,最好還是買2.0L車型。

    總結:308S和高爾夫的底盤都很紮實,高速穩定性很好,雖然308S實力也很強,但是就是銷量被高爾夫完虐,所以說308S只要再加大優惠力度銷量肯定會不錯的。昂克賽拉算是比較另類的日本車,非常強調駕控樂趣,雖然底盤沒辦法和它倆比,但是駕駛感受卻非常不錯。本站聲明:網站內容來源於http://www.auto6s.com/,如有侵權,請聯繫我們,我們將及時處理

    【其他文章推薦】

    ※超省錢租車方案

    ※別再煩惱如何寫文案,掌握八大原則!

    ※回頭車貨運收費標準

    ※教你寫出一流的銷售文案?

    ※產品缺大量曝光嗎?你需要的是一流包裝設計!

    ※廣告預算用在刀口上,台北網頁設計公司幫您達到更多曝光效益

    網頁設計最專業,超強功能平台可客製化