EDIT:
Well to explain what I finally need:
We are looking for what steam tells us about an specific app, like "Dead by Daylight".
Dim address As String = "http://store.steampowered.com/api/appdetails?appids=381210&filters=basic"
Dim link As WebClient = New WebClient()
Dim info As String = link.DownloadString(address)
As result there is the following JSON-like server answer.
{"381210":{"success":true,"data":{"type":"game","name":"Dead by Daylight","steam_appid":381210,"required_age":0,"is_free":false,"dlc":[492140,509060,530710,530711,554380],"detailed_description":"<h1>Digitale Deluxe-Edition<\/h1><p><img src=\"http:\/\/cdn.akamai.steamstatic.com\/steam\/apps\/381210\/extras\/dlx_1.jpg?t=1480018883\">\r<br>The Deluxe Edition includes the base game, official soundtrack, digital art book, two masks for PAYDAY 2.<\/p><br><h1>\u00dcber das Spiel<\/h1><strong>Der Tod ist keine Zuflucht.<\/strong>\r<br>\r<br>Dead by Daylight ist ein Multiplayer-Horrorspiel (4vs1), in dem ein Spieler die Rolle eines wilden Killers \u00fcbernimmt und die anderen vier Spieler als \u00dcberlebende spielen, die versuchen, dem Killer zu entkommen sowie Gefangenschaft, Folter und T\u00f6tung zu entgehen. \r<br>\r<br>Die \u00dcberlebenden spielen in der Dritte-Person-Perspektive und haben den Vorteil, einen besseren \u00dcberblick \u00fcber die Situation zu haben. Der Killer spielt in der Ich-Perspektive und ist mehr auf seine Beute fokusiert.\r<br>\r<br>Das Ziel der \u00dcberlebenden bei jedem Zusammentreffen ist es, dem T\u00f6tungsgebiet zu entkommen, ohne vom Killer gefangen zu werden \u2013 etwas, das sich leichter anh\u00f6rt, als es ist, vor allem, wenn sich die Umgebung jedes Mal, wenn du spielst, ver\u00e4ndert.\r<br>\r<br>Mehr Informationen \u00fcber das Spiel sind unter <a href=\"https:\/\/steamcommunity.com\/linkfilter\/?url=http:\/\/www.deadbydaylight.com\" target=\"_blank\" rel=\"noreferrer\" >http:\/\/www.deadbydaylight.com<\/a> verf\u00fcgbar.<h2 class=\"bb_tag\">Hauptmerkmale<\/h2>\r\u2022\t<strong>\u00dcberlebt gemeinsam... Oder auch nicht<\/strong> - \u00dcberlebende k\u00f6nnen entweder mit den anderen kooperieren oder eigenn\u00fctzig sein. Deine \u00dcberlebenschance wird variieren, je nachdem, ob ihr als Team zusammenarbeitet oder du allein loslegst. Wird es dir gelingen, den Killer zu \u00fcberlisten und seinen T\u00f6tungsgebiet zu entkommen ?\r<br>\r<br>\u2022\t<strong>Wo bin ich? <\/strong> - Jedes Level ist verfahrensorientiert angelegt, daher wei\u00dft du nie, was dich erwartet. Zuf\u00e4llige Spawnpunkte bedeuten, dass du dich niemals sicher f\u00fchlen wirst, da sich die Welt und ihre Gefahren jedes Mal, wenn du spielst, ver\u00e4ndern.\r<br>\r<br>\u2022\t<strong>Ein Festmahl f\u00fcr Killer <\/strong> - Dead by Daylight sch\u00f6pft aus allen Ecken der Horrowelt. Als Killer kannst du alles spielen, vom m\u00e4chtigen Zers\u00e4bler bis zum furchteinfl\u00f6\u00dfenden, paranormalen Entitus.\r<br>\r<br>\u2022\t<strong>Tiefer und tiefer <\/strong> - Jeder Killer und \u00dcberlebender hat sein eigenes, tiefes Fortschrittssystem und jede Menge Freischaltbares, das auf deine pers\u00f6nliche Strategie angepasst werden kann. Erfahrung, F\u00e4higkeiten und Verst\u00e4ndnis der Umgebung sind der Schl\u00fcssel zum Jagen oder \u00dcberlisten des Killers.\r<br>\r<br>\u2022\t<strong>Reale Spieler, reale Angst <\/strong> - Die verfahrensabh\u00e4ngigen Levels und wirkliche, menschliche Reaktionen bis hin zum Horror, machen jeden Spielabschnitt zu einem unerwarteten Szenario. Du kannst nie vorher sagen, wie es ausgehen wird. Ambiente, Musik und entspannte Umgebungen vereinen sich zu einer angsteinfl\u00f6\u00dfenden Erfahrung. Vielleicht k\u00f6nntest du mit gen\u00fcgend Zeit sogar herausfinden, was sich im Nebel verbirgt.","about_the_game":"<strong>Der Tod ist keine Zuflucht.<\/strong>\r<br>\r<br>Dead by Daylight ist ein Multiplayer-Horrorspiel (4vs1), in dem ein Spieler die Rolle eines wilden Killers \u00fcbernimmt und die anderen vier Spieler als \u00dcberlebende spielen, die versuchen, dem Killer zu entkommen sowie Gefangenschaft, Folter und T\u00f6tung zu entgehen. \r<br>\r<br>Die \u00dcberlebenden spielen in der Dritte-Person-Perspektive und haben den Vorteil, einen besseren \u00dcberblick \u00fcber die Situation zu haben. Der Killer spielt in der Ich-Perspektive und ist mehr auf seine Beute fokusiert.\r<br>\r<br>Das Ziel der \u00dcberlebenden bei jedem Zusammentreffen ist es, dem T\u00f6tungsgebiet zu entkommen, ohne vom Killer gefangen zu werden \u2013 etwas, das sich leichter anh\u00f6rt, als es ist, vor allem, wenn sich die Umgebung jedes Mal, wenn du spielst, ver\u00e4ndert.\r<br>\r<br>Mehr Informationen \u00fcber das Spiel sind unter <a href=\"https:\/\/steamcommunity.com\/linkfilter\/?url=http:\/\/www.deadbydaylight.com\" target=\"_blank\" rel=\"noreferrer\" >http:\/\/www.deadbydaylight.com<\/a> verf\u00fcgbar.<h2 class=\"bb_tag\">Hauptmerkmale<\/h2>\r\u2022\t<strong>\u00dcberlebt gemeinsam... Oder auch nicht<\/strong> - \u00dcberlebende k\u00f6nnen entweder mit den anderen kooperieren oder eigenn\u00fctzig sein. Deine \u00dcberlebenschance wird variieren, je nachdem, ob ihr als Team zusammenarbeitet oder du allein loslegst. Wird es dir gelingen, den Killer zu \u00fcberlisten und seinen T\u00f6tungsgebiet zu entkommen ?\r<br>\r<br>\u2022\t<strong>Wo bin ich? <\/strong> - Jedes Level ist verfahrensorientiert angelegt, daher wei\u00dft du nie, was dich erwartet. Zuf\u00e4llige Spawnpunkte bedeuten, dass du dich niemals sicher f\u00fchlen wirst, da sich die Welt und ihre Gefahren jedes Mal, wenn du spielst, ver\u00e4ndern.\r<br>\r<br>\u2022\t<strong>Ein Festmahl f\u00fcr Killer <\/strong> - Dead by Daylight sch\u00f6pft aus allen Ecken der Horrowelt. Als Killer kannst du alles spielen, vom m\u00e4chtigen Zers\u00e4bler bis zum furchteinfl\u00f6\u00dfenden, paranormalen Entitus.\r<br>\r<br>\u2022\t<strong>Tiefer und tiefer <\/strong> - Jeder Killer und \u00dcberlebender hat sein eigenes, tiefes Fortschrittssystem und jede Menge Freischaltbares, das auf deine pers\u00f6nliche Strategie angepasst werden kann. Erfahrung, F\u00e4higkeiten und Verst\u00e4ndnis der Umgebung sind der Schl\u00fcssel zum Jagen oder \u00dcberlisten des Killers.\r<br>\r<br>\u2022\t<strong>Reale Spieler, reale Angst <\/strong> - Die verfahrensabh\u00e4ngigen Levels und wirkliche, menschliche Reaktionen bis hin zum Horror, machen jeden Spielabschnitt zu einem unerwarteten Szenario. Du kannst nie vorher sagen, wie es ausgehen wird. Ambiente, Musik und entspannte Umgebungen vereinen sich zu einer angsteinfl\u00f6\u00dfenden Erfahrung. Vielleicht k\u00f6nntest du mit gen\u00fcgend Zeit sogar herausfinden, was sich im Nebel verbirgt.","short_description":"Dead by Daylight ist ein Multiplayer-Horrorspiel (4vs1), in dem ein Spieler die Rolle eines wilden Killers \u00fcbernimmt und die anderen vier Spieler als \u00dcberlebende spielen, die versuchen, dem Killer zu entkommen sowie Gefangenschaft und T\u00f6tung zu entgehen.","supported_languages":"Englisch<strong>*<\/strong>, Franz\u00f6sisch, Italienisch, Deutsch, Spanisch, Russisch, Chinesisch (vereinfacht)<br><strong>*<\/strong>Sprachen mit voller Audiounterst\u00fctzung","header_image":"http:\/\/cdn.akamai.steamstatic.com\/steam\/apps\/381210\/header.jpg?t=1480018883","website":"http:\/\/www.deadbydaylight.com","pc_requirements":{"minimum":"<strong>Minimum:<\/strong>\r<br><ul class=\"bb_ul\"><li><strong>Betriebssystem:<\/strong> 64-bit Betriebssystem (Windows 7, Windows 8 & Windows 8.1)\r<br><\/li><li><strong>Prozessor:<\/strong> Intel Core i3-4170 or AMD FX-8120\r<br><\/li><li><strong>Arbeitsspeicher:<\/strong> 8 GB RAM\r<br><\/li><li><strong>Grafik:<\/strong> DX11 Kompatible GeForce GTX 460 1GB oder AMD HD 6850 1GB o\tDirectX: Version 11\r<br><\/li><li><strong>DirectX:<\/strong> Version 11\r<br><\/li><li><strong>Netzwerk:<\/strong> Breitband-Internetverbindung\r<br><\/li><li><strong>Speicherplatz:<\/strong> 15 GB verf\u00fcgbarer Speicherplatz\r<br><\/li><li><strong>Soundkarte:<\/strong> DX11 kompatibel\r<\/li><\/ul>","recommended":"<strong>Empfohlen:<\/strong>\r<br><ul class=\"bb_ul\"><li><strong>Betriebssystem:<\/strong> 64-bit Betriebssystem (Windows 7, Windows 8 & Windows 8.1)\r<br><\/li><li><strong>Prozessor:<\/strong> Intel Core i3-4170 or AMD FX-8300 oder h\u00f6her\r<br><\/li><li><strong>Arbeitsspeicher:<\/strong> 8 GB RAM\r<br><\/li><li><strong>Grafik:<\/strong> DX11 Kompatible GeForce 760 or AMD HD 8800 oder h\u00f6her mit 4GB RAM\r<br><\/li><li><strong>DirectX:<\/strong> Version 11\r<br><\/li><li><strong>Netzwerk:<\/strong> Breitband-Internetverbindung\r<br><\/li><li><strong>Speicherplatz:<\/strong> 15 GB verf\u00fcgbarer Speicherplatz\r<br><\/li><li><strong>Soundkarte:<\/strong> DX11 kompatibel\r<\/li><\/ul>"},"mac_requirements":[],"linux_requirements":[],"legal_notice":"Dead by Daylight ist eine Handelsmarke von Behaviour Interactive Inc. Alle anderen Handelsmarken sind Eigentum ihrer jeweiligen Inhaber. Entwickelt von Behaviour Digital und publiziert von Starbreeze Studios. Alle Rechte vorbehalten."}}}
Finally I'd like to deserialize this so each property can be accessed as a string
Like
Dim apptype as String = "game"
Dim appname as String = "Dead by Daylight"
To help visualize the class structure you need to build you can use this tool
I will assume you need to have this be dynamic (forgive my hack as I am not familar with VB and JSON) so I replace the 381210 property with a static id property name so our class/s can reflect the data more easily.
First I we get the data (JSON) parse it (yes parse) then we deserialize it into our class properties so we can access the data easily later on.
Put this section in your event (such as a button click)
'This is your JSON string from STEAM
Dim a As String = "{""381210"":{""success"":true,""data"":{""type"":""game"",""name"":""Dead by Daylight"",""steam_appid"":381210,""required_age"":0,""is_free"":false,""dlc"":[492140,509060,530710,530711,554380],""detailed_description"":""<h1>Digitale Deluxe-Edition<\/h1><p><img src=\""http:\/\/cdn.akamai.steamstatic.com\/steam\/apps\/381210\/extras\/dlx_1.jpg?t=1480018883\"">\r<br>The Deluxe Edition includes the base game, official soundtrack, digital art book, two masks for PAYDAY 2.<\/p><br><h1>\u00dcber das Spiel<\/h1><strong>Der Tod ist keine Zuflucht.<\/strong>\r<br>\r<br>Dead by Daylight ist ein Multiplayer-Horrorspiel (4vs1), in dem ein Spieler die Rolle eines wilden Killers \u00fcbernimmt und die anderen vier Spieler als \u00dcberlebende spielen, die versuchen, dem Killer zu entkommen sowie Gefangenschaft, Folter und T\u00f6tung zu entgehen. \r<br>\r<br>Die \u00dcberlebenden spielen in der Dritte-Person-Perspektive und haben den Vorteil, einen besseren \u00dcberblick \u00fcber die Situation zu haben. Der Killer spielt in der Ich-Perspektive und ist mehr auf seine Beute fokusiert.\r<br>\r<br>Das Ziel der \u00dcberlebenden bei jedem Zusammentreffen ist es, dem T\u00f6tungsgebiet zu entkommen, ohne vom Killer gefangen zu werden \u2013 etwas, das sich leichter anh\u00f6rt, als es ist, vor allem, wenn sich die Umgebung jedes Mal, wenn du spielst, ver\u00e4ndert.\r<br>\r<br>Mehr Informationen \u00fcber das Spiel sind unter <a href=\""https:\/\/steamcommunity.com\/linkfilter\/?url=http:\/\/www.deadbydaylight.com\"" target=\""_blank\"" rel=\""noreferrer\"" >http:\/\/www.deadbydaylight.com<\/a> verf\u00fcgbar.<h2 class=\""bb_tag\"">Hauptmerkmale<\/h2>\r\u2022\t<strong>\u00dcberlebt gemeinsam... Oder auch nicht<\/strong> - \u00dcberlebende k\u00f6nnen entweder mit den anderen kooperieren oder eigenn\u00fctzig sein. Deine \u00dcberlebenschance wird variieren, je nachdem, ob ihr als Team zusammenarbeitet oder du allein loslegst. Wird es dir gelingen, den Killer zu \u00fcberlisten und seinen T\u00f6tungsgebiet zu entkommen ?\r<br>\r<br>\u2022\t<strong>Wo bin ich? <\/strong> - Jedes Level ist verfahrensorientiert angelegt, daher wei\u00dft du nie, was dich erwartet. Zuf\u00e4llige Spawnpunkte bedeuten, dass du dich niemals sicher f\u00fchlen wirst, da sich die Welt und ihre Gefahren jedes Mal, wenn du spielst, ver\u00e4ndern.\r<br>\r<br>\u2022\t<strong>Ein Festmahl f\u00fcr Killer <\/strong> - Dead by Daylight sch\u00f6pft aus allen Ecken der Horrowelt. Als Killer kannst du alles spielen, vom m\u00e4chtigen Zers\u00e4bler bis zum furchteinfl\u00f6\u00dfenden, paranormalen Entitus.\r<br>\r<br>\u2022\t<strong>Tiefer und tiefer <\/strong> - Jeder Killer und \u00dcberlebender hat sein eigenes, tiefes Fortschrittssystem und jede Menge Freischaltbares, das auf deine pers\u00f6nliche Strategie angepasst werden kann. Erfahrung, F\u00e4higkeiten und Verst\u00e4ndnis der Umgebung sind der Schl\u00fcssel zum Jagen oder \u00dcberlisten des Killers.\r<br>\r<br>\u2022\t<strong>Reale Spieler, reale Angst <\/strong> - Die verfahrensabh\u00e4ngigen Levels und wirkliche, menschliche Reaktionen bis hin zum Horror, machen jeden Spielabschnitt zu einem unerwarteten Szenario. Du kannst nie vorher sagen, wie es ausgehen wird. Ambiente, Musik und entspannte Umgebungen vereinen sich zu einer angsteinfl\u00f6\u00dfenden Erfahrung. Vielleicht k\u00f6nntest du mit gen\u00fcgend Zeit sogar herausfinden, was sich im Nebel verbirgt."",""about_the_game"":""<strong>Der Tod ist keine Zuflucht.<\/strong>\r<br>\r<br>Dead by Daylight ist ein Multiplayer-Horrorspiel (4vs1), in dem ein Spieler die Rolle eines wilden Killers \u00fcbernimmt und die anderen vier Spieler als \u00dcberlebende spielen, die versuchen, dem Killer zu entkommen sowie Gefangenschaft, Folter und T\u00f6tung zu entgehen. \r<br>\r<br>Die \u00dcberlebenden spielen in der Dritte-Person-Perspektive und haben den Vorteil, einen besseren \u00dcberblick \u00fcber die Situation zu haben. Der Killer spielt in der Ich-Perspektive und ist mehr auf seine Beute fokusiert.\r<br>\r<br>Das Ziel der \u00dcberlebenden bei jedem Zusammentreffen ist es, dem T\u00f6tungsgebiet zu entkommen, ohne vom Killer gefangen zu werden \u2013 etwas, das sich leichter anh\u00f6rt, als es ist, vor allem, wenn sich die Umgebung jedes Mal, wenn du spielst, ver\u00e4ndert.\r<br>\r<br>Mehr Informationen \u00fcber das Spiel sind unter <a href=\""https:\/\/steamcommunity.com\/linkfilter\/?url=http:\/\/www.deadbydaylight.com\"" target=\""_blank\"" rel=\""noreferrer\"" >http:\/\/www.deadbydaylight.com<\/a> verf\u00fcgbar.<h2 class=\""bb_tag\"">Hauptmerkmale<\/h2>\r\u2022\t<strong>\u00dcberlebt gemeinsam... Oder auch nicht<\/strong> - \u00dcberlebende k\u00f6nnen entweder mit den anderen kooperieren oder eigenn\u00fctzig sein. Deine \u00dcberlebenschance wird variieren, je nachdem, ob ihr als Team zusammenarbeitet oder du allein loslegst. Wird es dir gelingen, den Killer zu \u00fcberlisten und seinen T\u00f6tungsgebiet zu entkommen ?\r<br>\r<br>\u2022\t<strong>Wo bin ich? <\/strong> - Jedes Level ist verfahrensorientiert angelegt, daher wei\u00dft du nie, was dich erwartet. Zuf\u00e4llige Spawnpunkte bedeuten, dass du dich niemals sicher f\u00fchlen wirst, da sich die Welt und ihre Gefahren jedes Mal, wenn du spielst, ver\u00e4ndern.\r<br>\r<br>\u2022\t<strong>Ein Festmahl f\u00fcr Killer <\/strong> - Dead by Daylight sch\u00f6pft aus allen Ecken der Horrowelt. Als Killer kannst du alles spielen, vom m\u00e4chtigen Zers\u00e4bler bis zum furchteinfl\u00f6\u00dfenden, paranormalen Entitus.\r<br>\r<br>\u2022\t<strong>Tiefer und tiefer <\/strong> - Jeder Killer und \u00dcberlebender hat sein eigenes, tiefes Fortschrittssystem und jede Menge Freischaltbares, das auf deine pers\u00f6nliche Strategie angepasst werden kann. Erfahrung, F\u00e4higkeiten und Verst\u00e4ndnis der Umgebung sind der Schl\u00fcssel zum Jagen oder \u00dcberlisten des Killers.\r<br>\r<br>\u2022\t<strong>Reale Spieler, reale Angst <\/strong> - Die verfahrensabh\u00e4ngigen Levels und wirkliche, menschliche Reaktionen bis hin zum Horror, machen jeden Spielabschnitt zu einem unerwarteten Szenario. Du kannst nie vorher sagen, wie es ausgehen wird. Ambiente, Musik und entspannte Umgebungen vereinen sich zu einer angsteinfl\u00f6\u00dfenden Erfahrung. Vielleicht k\u00f6nntest du mit gen\u00fcgend Zeit sogar herausfinden, was sich im Nebel verbirgt."",""short_description"":""Dead by Daylight ist ein Multiplayer-Horrorspiel (4vs1), in dem ein Spieler die Rolle eines wilden Killers \u00fcbernimmt und die anderen vier Spieler als \u00dcberlebende spielen, die versuchen, dem Killer zu entkommen sowie Gefangenschaft und T\u00f6tung zu entgehen."",""supported_languages"":""Englisch<strong>*<\/strong>, Franz\u00f6sisch, Italienisch, Deutsch, Spanisch, Russisch, Chinesisch (vereinfacht)<br><strong>*<\/strong>Sprachen mit voller Audiounterst\u00fctzung"",""header_image"":""http:\/\/cdn.akamai.steamstatic.com\/steam\/apps\/381210\/header.jpg?t=1480018883"",""website"":""http:\/\/www.deadbydaylight.com"",""pc_requirements"":{""minimum"":""<strong>Minimum:<\/strong>\r<br><ul class=\""bb_ul\""><li><strong>Betriebssystem:<\/strong> 64-bit Betriebssystem (Windows 7, Windows 8 & Windows 8.1)\r<br><\/li><li><strong>Prozessor:<\/strong> Intel Core i3-4170 or AMD FX-8120\r<br><\/li><li><strong>Arbeitsspeicher:<\/strong> 8 GB RAM\r<br><\/li><li><strong>Grafik:<\/strong> DX11 Kompatible GeForce GTX 460 1GB oder AMD HD 6850 1GB o\tDirectX: Version 11\r<br><\/li><li><strong>DirectX:<\/strong> Version 11\r<br><\/li><li><strong>Netzwerk:<\/strong> Breitband-Internetverbindung\r<br><\/li><li><strong>Speicherplatz:<\/strong> 15 GB verf\u00fcgbarer Speicherplatz\r<br><\/li><li><strong>Soundkarte:<\/strong> DX11 kompatibel\r<\/li><\/ul>"",""recommended"":""<strong>Empfohlen:<\/strong>\r<br><ul class=\""bb_ul\""><li><strong>Betriebssystem:<\/strong> 64-bit Betriebssystem (Windows 7, Windows 8 & Windows 8.1)\r<br><\/li><li><strong>Prozessor:<\/strong> Intel Core i3-4170 or AMD FX-8300 oder h\u00f6her\r<br><\/li><li><strong>Arbeitsspeicher:<\/strong> 8 GB RAM\r<br><\/li><li><strong>Grafik:<\/strong> DX11 Kompatible GeForce 760 or AMD HD 8800 oder h\u00f6her mit 4GB RAM\r<br><\/li><li><strong>DirectX:<\/strong> Version 11\r<br><\/li><li><strong>Netzwerk:<\/strong> Breitband-Internetverbindung\r<br><\/li><li><strong>Speicherplatz:<\/strong> 15 GB verf\u00fcgbarer Speicherplatz\r<br><\/li><li><strong>Soundkarte:<\/strong> DX11 kompatibel\r<\/li><\/ul>""},""mac_requirements"":[],""linux_requirements"":[],""legal_notice"":""Dead by Daylight ist eine Handelsmarke von Behaviour Interactive Inc. Alle anderen Handelsmarken sind Eigentum ihrer jeweiligen Inhaber. Entwickelt von Behaviour Digital und publiziert von Starbreeze Studios. Alle Rechte vorbehalten.""}}}"
'Pass the string to my parsing function (note this is parsing, below is called deserialization)
a = editJson(a)
'Create an object using Newtonsoft's Json, set Example (class) varaibles using the Json data (a)
Dim obj = JsonConvert.DeserializeObject(Of Example)(a)
'Show a message box with one of the object's names from the JSon class.
MsgBox(obj.id.data.name)
Here we need to parse out the number 381210 and replace it with our id property name
Function editJson(ByVal str As String) As String
'Get the first occurance of "
Dim first As Integer = str.IndexOf("""")
'Get the next occurance of " (3 is the starting offset)
Dim last As Integer = str.IndexOf("""", 3)
'Remove everything inside the first set of quotes
str = str.Remove(first + 1, last - 2)
'Insert ID where your number used to be (we need to do this because our JSon converter is looking for the 381210 as a proprety, but we can't easily assign a dynamic property, so instead we parse out the property name and replace it with our ID [note this id is also duplicated data as it shows up as the steam_appid]
Return str.Insert(2, "id")
End Function
Finally, we need to have our class structure match the JSON we are recieving, which can be done like this:
Public Class PcRequirements
Public Property minimum As String
Public Property recommended As String
End Class
Public Class Data
Public Property type As String
Public Property name As String
Public Property steam_appid As Integer
Public Property required_age As Integer
Public Property is_free As Boolean
Public Property dlc As Integer()
Public Property detailed_description As String
Public Property about_the_game As String
Public Property short_description As String
Public Property supported_languages As String
Public Property header_image As String
Public Property website As String
Public Property pc_requirements As PcRequirements
Public Property mac_requirements As Object()
Public Property linux_requirements As Object()
Public Property legal_notice As String
End Class
Public Class Game
Public Property success As Boolean
Public Property data As Data
End Class
Public Class Example
Public Property id As Game
End Class
Also, look at this post for an explanation to why the class structure must match. Also see this post for more information on the making the class structure.
It is worth noting the difference between parsing and deserialization in these terms parsing would be more along the lines of writing a loop to go through and read the data, splitting it into an array at each new property type; deserialization on the other hand we are putting it directly into an object (class structure) which is a much more specific term (which is why there was some confusion in the comments) this post gives a brief explanation of the difference
Related
I am trying to retrieve the current news via API Call from the page https://newsapi.org. This has all worked well so far, but sometimes I can't retrieve certain values even though they are spelled correctly.
At the moment I am not able to retrieve the description and urlToImage. Thank you in advance....
This is my current code:
import SwiftUI
struct Response: Codable {
var articles: [Article]
}
struct Article: Codable {
struct Source: Codable {
var name: String
}
var source: Source
var title: String
// var description: String
var url: URL
//var urlToImage: URL
var content: String
}
struct NewsGridView: View {
#State private var articles = [Article]()
var body: some View {
ScrollView {
// Generiert einen Button für jede Schlagzeile
ForEach(articles, id: \.title) { item in
ZStack {
Rectangle()
.foregroundColor(Color(.systemGray6))
.cornerRadius(15)
.frame(width: 295, height: 350, alignment: .center)
.shadow(radius: 5)
VStack {
Text(item.title)
.foregroundColor(.black)
.fontWeight(.bold)
.frame(width: 260)
.padding(.horizontal, 25)
}
}
}
.task {
await loadData()
}
}
}
func loadData() async {
guard let url = URL(string: "https://newsapi.org/v2/top-headlines?country=de&apiKey=--API KEY--") else {
print("Invalid URL")
return
}
do {
let (data, _) = try await URLSession.shared.data(from: url)
if let decodedResponse = try? JSONDecoder().decode(Response.self, from: data) {
articles = decodedResponse.articles
}
} catch {
print("Error")
}
}
}
That’s what it prints when I add
print(String(data: data, encoding: .utf8))
Optional("{\"status\":\"ok\",\"totalResults\":34,\"articles\":[{\"source\":{\"id\":null,\"name\":\"tagesschau.de\"},\"author\":\"tagesschau\",\"title\":\"Krieg gegen die Ukraine: Berichte über weitere Massengräber bei Mariupol | tagesschau.de - tagesschau.de\",\"description\":\"Satellitenbildern zufolge soll es im Großraum Mariupol weitere Massengräber geben. Derweil wird ein neuer Fluchtkorridor aus der belagerten Hafenstadt vorbereitet, während sich russische Truppen im Osten des Landes festsetzen.\",\"url\":\"https://www.tagesschau.de/ausland/europa/ukraine-mariuopol-massengraeber-101.html\",\"urlToImage\":\"https://www.tagesschau.de/multimedia/bilder/mariupol-graeber-101~_v-original.jpg\",\"publishedAt\":\"2022-04-23T02:51:44Z\",\"content\":\"Satellitenbildern zufolge soll es im Großraum Mariupol weitere Massengräber geben. Derweil wird ein neuer Fluchtkorridor aus der belagerten Hafenstadt vorbereitet, während sich russische Truppen im O… [+5484 chars]\"},{\"source\":{\"id\":null,\"name\":\"Www.fr.de\"},\"author\":null,\"title\":\"Frankreich-Wahl: TV-Duell Macron – Le Pen - eine Umfrage zeigt klaren Sieger - fr.de\",\"description\":\"Vor der Frankreich-Wahl 2022 liefern sich Emmanuel Macron und Marine Le Pen in einem TV-Duell einen harten Schlagabtausch.\",\"url\":\"https://www.fr.de/politik/stichwahl-paris-frankreich-wahl-2022-macron-le-pen-tv-duell-news-tv-russland-91489350.html\",\"urlToImage\":\"https://www.fr.de/bilder/2022/04/20/91489350/28696175-emmanuel-macron-und-marine-le-pen-im-tv-duell-zur-frankreich-wahl-2022-1dfe.jpg\",\"publishedAt\":\"2022-04-23T02:49:00Z\",\"content\":\"<ol><li>Startseite</li><li>Politik</li></ol>Erstellt: 23.04.2022, 04:49 Uhr\\r\\nVon: Andreas Apetz\\r\\nKommentareTeilen\\r\\nVor der Frankreich-Wahl 2022 liefern sich Emmanuel Macron und Marine Le Pen in einem… [+9368 chars]\"},{\"source\":{\"id\":null,\"name\":\"N-tv.de\"},\"author\":\"n-tv NACHRICHTEN\",\"title\":\"Vermittlung im Ukraine-Krieg: UN-Generalsekretär besucht nach Moskau auch Kiew - n-tv NACHRICHTEN\",\"description\":\"Ehemalige hochrangige UN-Mitarbeiter erhöhen den Druck auf Generalsekretär Guterres: In einem Brief fordern sie ihn zu mehr Engagement auf, um an einer politischen Lösung im Ukraine-Krieg mitzuwirken. Nun wird bekannt, dass er die Hauptstädte beider Kriegspar…\",\"url\":\"https://www.n-tv.de/politik/UN-Generalsekretaer-besucht-nach-Moskau-auch-Kiew-article23284809.html\",\"urlToImage\":\"https://bilder3.n-tv.de/img/incoming/crop23284810/0221323798-cImg_16_9-w1200/283315222.jpg\",\"publishedAt\":\"2022-04-23T01:31:00Z\",\"content\":\"Ehemalige hochrangige UN-Mitarbeiter erhöhen den Druck auf Generalsekretär Guterres: In einem Brief fordern sie ihn zu mehr Engagement auf, um an einer politischen Lösung im Ukraine-Krieg mitzuwirken… [+1887 chars]\"},{\"source\":{\"id\":null,\"name\":\"News.de\"},\"author\":\"roj/news.de\",\"title\":\"Erdnahe Asteroiden heute: Potenziell gefährlich! DIESE Asteroiden nähern sich der Erde - m.news.de\",\"description\":\"Mit \\\"(2001 XP31)\\\" und \\\"(2015 BK515)\\\" erreichen heute - neben 9 weiteren Asteroiden - 2 potenziell gefährliche Asteroiden den erdnächsten Punkt auf ihrer Umlaufbahn. Ein Überblick über die aktuell größten Asteroiden in Erdnähe und potenzielle Gefahren.\",\"url\":\"https://www.news.de/panorama/856160169/asteroid-heute-am-23-04-2022-in-erdnaehe-nasa-liste-potenziell-gefaehrlicher-asteroiden-mit-groesse-und-entfernung-zur-erde-aktuell/1/\",\"urlToImage\":\"https://media.news.de/resources/thumbs/52/e6/857718024_736x414/welche-asteroiden-sind-heute-in-erdnaehe-1646312378.jpg\",\"publishedAt\":\"2022-04-23T00:30:24Z\",\"content\":\"Mit \\\"(2001 XP31)\\\" und \\\"(2015 BK515)\\\" erreichen heute - neben 9 weiteren Asteroiden - 2 potenziell gefährliche Asteroiden den erdnächsten Punkt auf ihrer Umlaufbahn. Ein Überblick über die aktuell grö… [+6164 chars]\"},{\"source\":{\"id\":\"spiegel-online\",\"name\":\"Spiegel Online\"},\"author\":\"DER SPIEGEL\",\"title\":\"»Irrsinniger Krieg«: Tinkoff-Bank will sich nach Putin-Kritik ihres Gründers umbenennen - DER SPIEGEL\",\"description\":\"Die russische Tinkoff-Bank wird bald anders heißen. Der neue Name ist vermutlich eine Reaktion auf die deutlichen Worte, des Firmengründers Oleg Tinkow – er hatte das »Massaker« in der Ukraine angeprangert.\",\"url\":\"https://www.spiegel.de/wirtschaft/unternehmen/russland-ukraine-krieg-tinkoff-bank-will-sich-nach-kritik-von-oleg-tinkow-an-wladimir-putin-umbenennen-a-5cedb88f-20cf-4afe-8737-a7c07090ee5d\",\"urlToImage\":\"https://cdn.prod.www.spiegel.de/images/d22b0560-69af-4f64-8025-ee0c9bc043e7_w1280_r1.77_fpx61_fpy50.jpg\",\"publishedAt\":\"2022-04-22T23:28:34Z\",\"content\":\"Nach der scharfen Kritik des Bankiers Oleg Tinkow am Ukrainekrieg hat sein Finanzinstitut, die Tinkoff-Bank, eine Umbenennung bekannt gegeben. »Das Unternehmen hat sich lange auf den Schritt vorberei… [+1607 chars]\"},{\"source\":{\"id\":null,\"name\":\"BUNTE.de\"},\"author\":\"Anja Wöhrer\",\"title\":\"Herzogin Kate & Prinz William: Zauberhafte Geburtstagsaufnahmen: Louis wird 4! - BUNTE.de\",\"description\":\"Der jüngste Sohn der Cambridges wird vier Jahre alt. Mit neuen, zuckersüßen Fotos von Prinz Louis bezaubern uns Herzogin Kate und Prinz William.\",\"url\":\"https://www.bunte.de/royals/britisches-koenigshaus/herzogin-kate-prinz-william-zauberhafte-geburtstagsaufnahmen-louis-wird-4.html\",\"urlToImage\":\"https://images.bstatic.de/47tQlSeaxunqcv1Dz1ru868R1Ok=/1200x630/filters:focal(391x388:411x408)/images/f2da2f5e/6197/436f/86b2/656c17fd88c3.jpg\",\"publishedAt\":\"2022-04-22T22:27:40Z\",\"content\":\"Zwei Tage nachdem Queen Elizabeth II. (96) ihren 96. Geburtstag feierte, ist nun ihr Urenkel Prinz Louis (4) an der Reihe. Am Samstag (23. April) wird der jüngste Sprössling von Prinz William (39) un… [+496 chars]\"},{\"source\":{\"id\":null,\"name\":\"N-tv.de\"},\"author\":\"n-tv NACHRICHTEN\",\"title\":\"Wilder Playoff-Showdown: Eisbären rupfen die Adler in neun Minuten - n-tv NACHRICHTEN\",\"description\":\"Die Favoriten auf die deutsche Eishockeymeisterschaft haben sich in ihren Playoff-Halbfinals trotz Rückstanden erneut durchgesetzt. Am Sonntag kann bereits eine Entscheidung fallen.\",\"url\":\"https://www.n-tv.de/sport/Eisbaeren-rupfen-die-Adler-in-neun-Minuten-article23284736.html\",\"urlToImage\":\"https://bilder2.n-tv.de/img/incoming/crop23284733/1501323191-cImg_16_9-w1200/0810e799ff5d25710b4c2dafa7320f50.jpg\",\"publishedAt\":\"2022-04-22T21:02:30Z\",\"content\":\"Die Favoriten auf die deutsche Eishockeymeisterschaft haben sich in ihren Playoff-Halbfinals trotz Rückstanden erneut durchgesetzt. Am Sonntag kann bereits eine Entscheidung fallen.\\r\\nMeister Eisbären… [+2624 chars]\"},{\"source\":{\"id\":null,\"name\":\"Www.ndr.de\"},\"author\":\"Florian Neuhauss\",\"title\":\"FC Barcelona nimmt die VfL-Frauen vor Rekordkulisse auseinander - NDR.de\",\"description\":\"Es hätte der Abend ihres Lebens als Fußballerinnen werden sollen - vor der Rekordkulisse von 91.648 Zuschauern im Halbfinal-Hinspiel der Champions League beim FC Barcelona erlebten die Spielerinnen des VfL Wolfsburg allerdings ein Debakel. Mit dem 1:5 (0:4) w…\",\"url\":\"https://www.ndr.de/sport/fussball/FC-Barcelona-nimmt-vor-Rekordkulisse-die-VfL-Frauen-auseinander,wolfsburg17760.html\",\"urlToImage\":\"https://www.ndr.de/sport/fussball/wolfsburg17762_v-contentxl.jpg\",\"publishedAt\":\"2022-04-22T20:30:49Z\",\"content\":\"Stand: 22.04.2022 22:21 Uhr\\r\\nEs hätte der Abend ihres Lebens als Fußballerinnen werden sollen - vor der Rekordkulisse von 91.648 Zuschauern im Halbfinal-Hinspiel der Champions League beim FC Barcelon… [+4647 chars]\"},{\"source\":{\"id\":\"spiegel-online\",\"name\":\"Spiegel Online\"},\"author\":\"DER SPIEGEL\",\"title\":\"Fußball-Bundesliga: Kruse-Dreierpack sorgt für Wolfsburger Glücksgefühle - DER SPIEGEL\",\"description\":\"Allein für diesen Abend hat sich der Winter-Transfer von Max Kruse nach Wolfsburg schon gelohnt. Gegen Mainz 05 traf er dreimal – und bringt den VfL damit dem Klassenerhalt ein ganzes Stück näher.\",\"url\":\"https://www.spiegel.de/sport/fussball/vfl-wolfsburg-besiegt-mainz-05-vor-allem-dank-max-kruse-a-c6083ce2-5aa2-433b-bda6-2ef9a3ce22a5\",\"urlToImage\":\"https://cdn.prod.www.spiegel.de/images/9139e7a4-81c2-455a-908b-cd268792b31b_w1280_r1.77_fpx62_fpy14.jpg\",\"publishedAt\":\"2022-04-22T20:27:07Z\",\"content\":\"Angeführt von Dreifachtorschütze Max Kruse hat ein wie entfesselnd aufspielende VfL Wolfsburg den vorentscheidenden Schritt zum Klassenerhalt in der Fußball-Bundesliga gemacht. Die Niedersachsen ließ… [+2011 chars]\"},{\"source\":{\"id\":null,\"name\":\"merkur.de\"},\"author\":null,\"title\":\"Ukraine-News: Russland räumt erstmals „Moskwa“-Verluste ein - Ausländische Kämpfer in Stahlwerk eingeschlossen - Merkur.de\",\"description\":\"Selenskyj sagt, Mariupol widersetze sich weiter Russland. Ein Pro-Kreml-Kanal veröffentlichte kurzeitig neue Todeszahlen der russischen Seite. News-Ticker.\",\"url\":\"https://www.merkur.de/politik/kiew-grossoffensive-ukraine-krieg-russland-news-aktuell-mariupol-putin-selenskyj-angriffe-zr-91491144.html\",\"urlToImage\":\"https://www.merkur.de/bilder/2022/04/21/91491144/28676040-das-russische-flaggschiff-moskwa-soll-durch-ukrainischen-beschuss-zerstoert-worden-sein-nun-wirft-die-ukraine-russland-einen-vergeltungsversuch-vor-1YzFroI9LTfe.jpg\",\"publishedAt\":\"2022-04-22T19:41:44Z\",\"content\":\"<ol><li>Startseite</li><li>Politik</li></ol>Erstellt: 23.04.2022, 04:50 Uhr\\r\\nVon: Richard Strobl, Patrick Mayer, Katharina Haase, Stephanie Munk, Christoph Gschoßmann, Fabian Müller\\r\\nKommentareTeilen… [+25691 chars]\"},{\"source\":{\"id\":null,\"name\":\"STERN.de\"},\"author\":\"STERN.de\",\"title\":\"Olaf Scholz verteidigt Waffen-Strategie: \\\"Es darf keinen Atomkrieg geben\\\" - STERN.de\",\"description\":\"Viele Länder liefern schwere Waffen an die Ukraine. Bundeskanzler Olaf Scholz bleibt aber zurückhaltend. In einem Interview lässt er durchblicken, was dah...\",\"url\":\"https://www.stern.de/politik/deutschland/olaf-scholz-verteidigt-waffen-strategie---es-darf-keinen-atomkrieg-geben--31799924.html\",\"urlToImage\":\"https://image.stern.de/31799964/t/wx/v2/w1440/r1.7778/-/olaf-scholz.jpg\",\"publishedAt\":\"2022-04-22T17:41:00Z\",\"content\":\"22.04.2022, 19:41 Uhr\\r\\n 3 Min. Lesezeit\\r\\nFrankreich, Tschechien, die Niederlande und sogar das kleine Estland: Alle liefern sie schwere Waffen. Olaf Scholz ist weiter zurückhaltend. In einem Intervie… [+5426 chars]\"},{\"source\":{\"id\":null,\"name\":\"SPORT1\"},\"author\":\"SPORT1\",\"title\":\"Formel 1 Qualifying LIVE: Verstappen holt Pole für Sprint-Rennen! F1 Heute im TV, Stream, Ticker - SPORT1\",\"description\":\"Ferrari geht auf seiner Hausstrecke in Imola als Favorit ins Wochenende. Aber nicht nur ein Crash von Carlos Sainz dämpft die Stimmung. Auch Charles Leclerc wird übertrumpft.\",\"url\":\"https://www.sport1.de/news/motorsport/formel1/2022/04/formel-1-qualifying-in-imola-live-startzeit-ubertragung-im-tv-stream-ticker\",\"urlToImage\":\"https://reshape.sport1.de/c/t/da4cf21c-5f70-4027-b661-13b35593be61/1200x630\",\"publishedAt\":\"2022-04-22T17:31:42Z\",\"content\":\"Heimspiel für Ferrari beim Großen Preis der Emilia-Romagna!\\r\\nAuf der ersten Europa-Station in dieser Formel-1-Saison geht es ins Autodromo Enzo e Dino Ferrari in Imola - nicht nur auf die italienisch… [+3476 chars]\"},{\"source\":{\"id\":null,\"name\":\"YouTube\"},\"author\":null,\"title\":\"LIVE : Der Countdown zu Show 8 | Let\'s Dance - RTL\",\"description\":\"Alle News und Infos zu Let\'s Dance: https://www.rtl.de/cms/sendungen/lets-dance.html?utm_source=youtube&utm_medium=editorial&utm_campaign=beschreibung&utm_te...\",\"url\":\"https://www.youtube.com/watch?v=fdVGuYKWUBA\",\"urlToImage\":\"https://i.ytimg.com/vi/fdVGuYKWUBA/hqdefault.jpg\",\"publishedAt\":\"2022-04-22T17:12:38Z\",\"content\":null},{\"source\":{\"id\":null,\"name\":\"Www.ndr.de\"},\"author\":null,\"title\":\"Corona-News-Ticker: Gericht kippt Hotspot-Regelung für MV - NDR.de\",\"description\":\"Die Voraussetzungen hätten laut Gericht für die Kommunen einzeln überprüft werden müssen. Mehr Corona-News im Live-Ticker.\",\"url\":\"https://www.ndr.de/nachrichten/info/Corona-News-Ticker-Gericht-kippt-Hotspot-Regelung-fuer-MV,coronaliveticker1716.html\",\"urlToImage\":\"https://www.ndr.de/nachrichten/info/hotspot142_v-contentxl.jpg\",\"publishedAt\":\"2022-04-22T16:38:20Z\",\"content\":\"Stand: 22.04.2022 20:08 Uhr\\r\\nIm Live-Ticker informiert NDR.de Sie auch heute - am Freitag, 22. April 2022 - aktuell über die Folgen der Coronavirus-Pandemie für Niedersachsen, Schleswig-Holstein, Mec… [+21739 chars]\"},{\"source\":{\"id\":null,\"name\":\"Www.br.de\"},\"author\":\"BR24 Redaktion\",\"title\":\"Ukraine: Russland nennt erstmals konkrete Kriegsziele - br.de\",\"description\":\"Russland will neben dem Donbass auch die gesamte Schwarzmeerküste einnehmen. Unterdessen mehren sich die Hinweise auf zahlreiche Kriegsverbrechen im Krieg gegen die Ukraine. Die deutsche Wirtschaft leidet laut Bundesbank erheblich unter dem Krieg.\",\"url\":\"https://www.br.de/nachrichten/deutschland-welt/ukraine-russland-nennt-erstmals-konkrete-kriegsziele,T3kQ5Ak\",\"urlToImage\":\"https://img.br.de/9fe982aa-7dba-443e-94d0-ca6c9cf9c83c.jpeg?q=80&rect=2,280,3998,2252&w=1600&h=900\",\"publishedAt\":\"2022-04-22T16:37:41Z\",\"content\":\"In der Ukraine wird während der orthodoxen Osterfeiertage weiter gekämpft. Nach Angaben des ukrainischen Präsidenten Wolodymyr Selenskyj hat Russland den Vorschlag einer Feuerpause über die Osterfeie… [+4719 chars]\"},{\"source\":{\"id\":null,\"name\":\"t-online.de\"},\"author\":\"Nora Schiemann, Nicolas Lindken\",\"title\":\"Körpersprache-Experte über Putins Auftritt: \\\"Der schläft seit Wochen schlecht\\\" - t-online\",\"description\":\"Russische Truppen kontrollieren offenbar Mariupol, der Kreml zeigt Putins Befehl an seinen Minister. Details am Präsidenten sorgen für Spekulationen.\",\"url\":\"https://www.t-online.de/nachrichten/ausland/id_92058550/koerpersprache-experte-ueber-putins-auftritt-der-schlaeft-seit-wochen-schlecht-.html\",\"urlToImage\":\"https://bilder.t-online.de/b/92/05/90/32/id_92059032/tid_da/index.png\",\"publishedAt\":\"2022-04-22T16:34:00Z\",\"content\":\"Russische Truppen kontrollieren offenbar Mariupol, der Kreml zeigt daraufhin einen Befehl Putins. Auffällige Details sorgen jetzt für Spekulationen. Ein Experte bewertet die skurrile Szene im Video.… [+1045 chars]\"},{\"source\":{\"id\":null,\"name\":\"Jpgames.de\"},\"author\":\"Tony\",\"title\":\"Der Starttermin für das neue PlayStation Plus in Europa steht jetzt konkret fest • JPGAMES.DE - jpgames.de\",\"description\":\"Sony PlayStation hat den Start des neuen PlayStation Plus konkretisiert. Wir in Europa sind demnach als Letzte an der Reihe.\",\"url\":\"https://jpgames.de/2022/04/der-starttermin-fuer-das-neue-playstation-plus-in-europa-steht-jetzt-konkret-fest/\",\"urlToImage\":\"https://jpgames.de/wp-content/uploads/2019/03/God-of-War_2018_01-23-18_006.jpg\",\"publishedAt\":\"2022-04-22T16:28:30Z\",\"content\":\"Sony PlayStation hat den Start des neuen PlayStation Plus konkretisiert. Wir in Europa sind demnach als Letzte an der Reihe. Wie geplant beginnt das Programm in Asien (ohne Japan), wo am 23. Mai der … [+1075 chars]\"},{\"source\":{\"id\":null,\"name\":\"tagesschau.de\"},\"author\":\"tagesschau\",\"title\":\"Hohe Lebensmittelpreise: Streit über die Mehrwertsteuer | tagesschau.de - tagesschau.de\",\"description\":\"Wegen der stark steigenden Lebensmittelpreise sind Forderungen laut geworden, die Mehrwertsteuer bei Grundnahrungsmitteln auszusetzen. Wie sind die Reaktionen aus der Politik? Und was sagen Wirtschaftsexperten dazu?\",\"url\":\"https://www.tagesschau.de/wirtschaft/verbraucher/senkung-mehrwertsteuer-grundnahrungsmittel-101.html\",\"urlToImage\":\"https://www.tagesschau.de/multimedia/bilder/mehrwertsteuer-119~_v-original.jpg\",\"publishedAt\":\"2022-04-22T15:39:35Z\",\"content\":\"Wegen der stark steigenden Lebensmittelpreise sind Forderungen laut geworden, die Mehrwertsteuer bei Grundnahrungsmitteln auszusetzen. Wie sind die Reaktionen aus der Politik? Und was sagen Wirtschaf… [+5685 chars]\"},{\"source\":{\"id\":null,\"name\":\"play3.de\"},\"author\":\"Dennis Leschnikowski\",\"title\":\"The House Of The Dead Remake: PlayStation Move-Unterstützung wird nachgereicht - play3.de\",\"description\":\"In dieser Woche wurde das Remake zum düsteren Shooter \\\"The House of the Dead\\\" auch offiziell für die PlayStation 4 und weitere Plattformen angekündigt. Da es sich bei \\\"The House of the Dead\\\"\",\"url\":\"https://www.play3.de/2022/04/22/the-house-of-the-dead-remake-playstation-move-unterstuetzung-wird-nachgereicht/\",\"urlToImage\":\"https://www.play3.de/wp-content/uploads/2022/04/The-House-of-the-Dead.webp\",\"publishedAt\":\"2022-04-22T15:11:00Z\",\"content\":\"In dieser Woche wurde das Remake zum düsteren Shooter „The House of the Dead“ auch offiziell für die PlayStation 4 und weitere Plattformen angekündigt.\\r\\nDa es sich bei „The House of the Dead“ um eine… [+1880 chars]\"},{\"source\":{\"id\":null,\"name\":\"Www.zdf.de\"},\"author\":\"Zweites Deutsches Fernsehen\",\"title\":\"Russischer General äußert sich: Kriegsziel ist völlige Kontrolle über Donbass - zdf.de\",\"description\":\"Ein russischer General hat detaillierte Angaben zu Kriegszielen gemacht. Russland strebe unter anderem die vollständige Kontrolle über den gesamten Donbass und Süden des Landes an.\",\"url\":\"https://www.zdf.de/nachrichten/politik/kriegsziele-russland-ukraine-moldau-100.html\",\"urlToImage\":\"https://www.zdf.de/assets/mariupol-ukraine-100~1280x720?cb=1650639169708\",\"publishedAt\":\"2022-04-22T15:06:03Z\",\"content\":null}]}")
Use this Article model, works for me with the data you have provided.
struct Article: Codable {
struct Source: Codable {
var name: String
}
var source: Source
var title: String
var description: String
var url: URL
var urlToImage: URL
var content: String? // <-- here optional
}
You can see this at the end of the data: \"content\":null
I am using the HtmlUnit to get the text from a web page what is probably generated by Javascript (since it is not in the HTML code and links).
The Url i look is stepstone
import java.io.IOException;
import java.util.logging.Level;
import org.apache.commons.logging.LogFactory;
import com.gargoylesoftware.htmlunit.BrowserVersion;
import com.gargoylesoftware.htmlunit.FailingHttpStatusCodeException;
import com.gargoylesoftware.htmlunit.WebClient;
import com.gargoylesoftware.htmlunit.html.HtmlPage;
public class HtmlUnit2 {
public static void main(String[] args) {
LogFactory.getFactory().setAttribute("org.apache.commons.logging.Log",
"org.apache.commons.logging.impl.NoOpLog");
java.util.logging.Logger.getLogger("com.gargoylesoftware.htmlunit").setLevel(Level.OFF);
java.util.logging.Logger.getLogger("org.apache.commons.httpclient").setLevel(Level.OFF);
String uri = "https://www.stepstone.de/stellenangebote--Projektleiter-m-w-Forschung-Entwicklung-Automotive-Security-Standardisierung-und-prototypische-Implementierung-Eching-bei-Muenchen-DENSO-AUTOMOTIVE-Deutschland-GmbH--4675635-inline.html";
HtmlPage page;
try {
final WebClient webClient = new WebClient(BrowserVersion.FIREFOX_52); // Imitating a specific browser
page = webClient.getPage(uri);
final String pageAsText = page.asText();
System.out.println(pageAsText);
} catch (FailingHttpStatusCodeException | IOException e) {
// e.printStackTrace();
}
}
}
Somehow I can not get the text from page.asXml() and only as page.asText(), howewer the output contains lots of garbage and useless words from other tags:
Projektleiter (m/w) Forschung & Entwicklung – Automotive Security Standardisierung und prototypische Implementierung - Job bei DENSO AUTOMOTIVE Deutschland GmbH in Eching bei München
Unsere Webseite verwendet Cookies, um Ihnen eine bessere Nutzererfahrung zu ermöglichen. Durch die Nutzung unserer Webseite stimmen Sie unserer Verwendung von Cookies zu. Mehr
Stellenanzeige aufgeben
Für Arbeitgeber
Login
Lebenslauf anlegen
DE
Suchen
Erweiterte Suche
DENSO AUTOMOTIVE Deutschland GmbH
Projektleiter (m/w) Forschung & Entwicklung – Automotive Security Standardisierung und prototypische Implementierung
Eching bei München
Feste Anstellung
Vollzeit
Erschienen: vor einem Monat
Jetzt bewerben
Merken
DENSO AUTOMOTIVE Deutschland GmbH DENSO zählt als globaler Automobilzulieferer für Erstausrüstung und Aftermarket mit rund 151.000 Mitarbeitern in 38 Ländern weltweit zu den führenden Entwicklern und Anbietern von Komponenten und Systemen in den Bereichen Klimatisierung, Antriebsstrang, Elektrik, Elektronik, Fahrerassistenz und Infotainment. Zur Verstärkung unserer Abteilung Corporate Research & Development in Eching bei München suchen wir ab sofort einen Projektleiter (m/w) Forschung & Entwicklung – Automotive Security Standardisierung und prototypische Implementierung Wir suchen einen kompetenten Projektleiter (m/w) in Eching bei München. Die stetig wachsende Vernetzung von Fahrzeugen führt zu einem deutlich gesteigerten Angriffspotenzial. Innerhalb des Fahrzeugs wandeln sich die statisch konfigurierten Systeme in Systeme mit dynamischen Zuweisungen und Abläufen. Sie werden in dieser Stelle für die Planung sowie Durchführung von Forschungs- und Entwicklungsaufgaben für den Bereich Automotive Security verantwortlich sein. Diese werden Sie in enger Zusammenarbeit mit anderen Entwicklungsabteilungen innerhalb Europas sowie weltweit durchführen. Hauptaugenmerk liegt in der Verwertung der Erkenntnisse und Ergebnisse der nationalen, europäischen als auch internationalen Standardisierung sowie dem Transfer zur Unterstützung von Kundenprojekten. Im Detail werden Sie bei der internationalen Standardisierung aktiv mitarbeiten und dabei DENSOs technische Interessen vertreten, die nationale Standardisierung unterstützen und dazu engen Dialog mit den Gremienpartnern über entstehende Normen führen, die F&E-Prototypprojekte im Bereich Automotive Security sowie die Planung als auch Durchführung daran ausgerichteter Unterprojekte unterstützen und sich selber weiterentwickeln, um ein führender technischer Experte (m/w) in DENSOs Wachstumsbereichen zu werden. Erforderliche Qualifikation: Universitätsabschluss (Diplom, Master oder Promotion) im Bereich Informatik, Elektrotechnik oder andere verwandte Ingenieurstudiengänge mit Bezug zur Automobiltechnik Solides Wissen in IT Security, wie kryptographischen Verfahren, Risikoanalysen und -bewertungen, idealerweise in der Anwendung auf den Automobilsektor Sicherer und effizienter Umgang mit IT und Erfahrungen mit Linux-Entwicklungen, idealerweise Embedded Linux Erfahrungen mit Web-Entwicklung und Server-Verwaltung Erste Erfahrungen im Bereich Erfindungen und Patentschutz Herausragende Kommunikations- und Präsentationsfähigkeiten Verhandlungssichere und überzeugende Persönlichkeit Teamfähigkeit mit interkulturellen Kompetenzen bei gleichzeitiger Fähigkeit, selbstständig und gut organisiert zu arbeiten Bereitschaft, über die Grenzen von akademischer Forschung hinauszudenken Führerschein der Klasse B und die Bereitschaft zu gelegentlichen nationalen als auch internationalen Dienstreisen Verhandlungssichere Deutsch- und Englischkenntnisse in Wort und Schrift (Geschäftssprache ist Englisch) Bitte senden Sie uns Ihre Bewerbung mit Angabe Ihrer Verfügbarkeit, Ihrer Gehaltsvorstellung und der Stellennummer 201709 in Deutsch und Englisch direkt an jobs#denso-auto.de. DENSO AUTOMOTIVE Deutschland GmbH HR Specialist Frau Bianca Petritsch Tel: 08165/944-232, jobs#denso-auto.de www.denso-europe.com www.denso-local.com/deutschland Follow us on twitter
Jetzt bewerben
Unternehmen
11 Stellen
DENSO AUTOMOTIVE Deutschland GmbH
Fahrzeugbau/-zulieferer
Standort
Karte anzeigen
DENSO AUTOMOTIVE Deutschland GmbH
Eching, Deutschland
Weitere Jobs
1.
Nach Berufsfeld
2. Ingenieure und technisc...
3. Einkauf, Materialwirtsc...
4. IT
1.
Nach Standort
2. Eching
3. München
4. Bayern
5. Ostbayern
6. Südbayern
1.
Nach Jobtitel
2. Applikationsingenieur/i...
3. Entwicklungsingenieur/i...
4. Head of Display
Über StepStone
Wer wir sind
Presse
Partner werden
Karriere bei StepStone
StepStone Blog
Feedback
Geben Sie uns Feedback
Apps
Datenschutzerklärung
Nutzungsbedingungen
Kontakt
Informationen über Ihre Rechte
AGB
Impressum
Copyright © StepStone GmbH 1996 - 2017
And i want to have only this element:
DENSO AUTOMOTIVE Deutschland GmbH DENSO zählt als globaler Automobilzulieferer für Erstausrüstung und Aftermarket mit rund 151.000 Mitarbeitern in 38 Ländern weltweit zu den führenden Entwicklern und Anbietern von Komponenten und Systemen in den Bereichen Klimatisierung, Antriebsstrang, Elektrik, Elektronik, Fahrerassistenz und Infotainment. Zur Verstärkung unserer Abteilung Corporate Research & Development in Eching bei München suchen wir ab sofort einen Projektleiter (m/w) Forschung & Entwicklung – Automotive Security Standardisierung und prototypische Implementierung Wir suchen einen kompetenten Projektleiter (m/w) in Eching bei München. Die stetig wachsende Vernetzung von Fahrzeugen führt zu einem deutlich gesteigerten Angriffspotenzial. Innerhalb des Fahrzeugs wandeln sich die statisch konfigurierten Systeme in Systeme mit dynamischen Zuweisungen und Abläufen. Sie werden in dieser Stelle für die Planung sowie Durchführung von Forschungs- und Entwicklungsaufgaben für den Bereich Automotive Security verantwortlich sein. Diese werden Sie in enger Zusammenarbeit mit anderen Entwicklungsabteilungen innerhalb Europas sowie weltweit durchführen. Hauptaugenmerk liegt in der Verwertung der Erkenntnisse und Ergebnisse der nationalen, europäischen als auch internationalen Standardisierung sowie dem Transfer zur Unterstützung von Kundenprojekten. Im Detail werden Sie bei der internationalen Standardisierung aktiv mitarbeiten und dabei DENSOs technische Interessen vertreten, die nationale Standardisierung unterstützen und dazu engen Dialog mit den Gremienpartnern über entstehende Normen führen, die F&E-Prototypprojekte im Bereich Automotive Security sowie die Planung als auch Durchführung daran ausgerichteter Unterprojekte unterstützen und sich selber weiterentwickeln, um ein führender technischer Experte (m/w) in DENSOs Wachstumsbereichen zu werden. Erforderliche Qualifikation: Universitätsabschluss (Diplom, Master oder Promotion) im Bereich Informatik, Elektrotechnik oder andere verwandte Ingenieurstudiengänge mit Bezug zur Automobiltechnik Solides Wissen in IT Security, wie kryptographischen Verfahren, Risikoanalysen und -bewertungen, idealerweise in der Anwendung auf den Automobilsektor Sicherer und effizienter Umgang mit IT und Erfahrungen mit Linux-Entwicklungen, idealerweise Embedded Linux Erfahrungen mit Web-Entwicklung und Server-Verwaltung Erste Erfahrungen im Bereich Erfindungen und Patentschutz Herausragende Kommunikations- und Präsentationsfähigkeiten Verhandlungssichere und überzeugende Persönlichkeit Teamfähigkeit mit interkulturellen Kompetenzen bei gleichzeitiger Fähigkeit, selbstständig und gut organisiert zu arbeiten Bereitschaft, über die Grenzen von akademischer Forschung hinauszudenken Führerschein der Klasse B und die Bereitschaft zu gelegentlichen nationalen als auch internationalen Dienstreisen Verhandlungssichere Deutsch- und Englischkenntnisse in Wort und Schrift (Geschäftssprache ist Englisch) Bitte senden Sie uns Ihre Bewerbung mit Angabe Ihrer Verfügbarkeit, Ihrer Gehaltsvorstellung und der Stellennummer 201709 in Deutsch und Englisch direkt an jobs#denso-auto.de. DENSO AUTOMOTIVE Deutschland GmbH HR Specialist Frau Bianca Petritsch Tel: 08165/944-232, jobs#denso-auto.de www.denso-europe.com www.denso-local.com/deutschland Follow us on twitter
How to focus on this text since is generated by javascript and does not present in xml/dom model?
Because the additional content is retreived via ajax and ajax is async, you have to wait a bit.
This works here with the latest SNAPSHOT
String url = "https://www.stepstone.de/stellenangebote--Projektleiter-m-w-Forschung-Entwicklung-Automotive-Security-Standardisierung-und-prototypische-Implementierung-Eching-bei-Muenchen-DENSO-AUTOMOTIVE-Deutschland-GmbH--4675635-inline.html";
try (final WebClient webClient = new WebClient(BrowserVersion.FIREFOX_52)) {
final HtmlPage page = webClient.getPage(url);
webClient.waitForBackgroundJavaScript(1000);
System.out.println("----------------");
System.out.println(page.asText());
System.out.println("----------------");
}
I have finished my cursor query to split an html table in the article description (varchar(max)) to implement it an attributes(#test) table. And added it into a another cursor to loop the whole articles table with ~ 5000 articles.
Query is working fine (expected inserted results) so far, but ...
Error description:
after around 2 minutes I am getting the following message.
Error executing batch. Error Message: Exception of type 'System.OutOfMemoryException
System info:
Server is a windows 2008 r2 with 8gb ram
CPU E5-2620 2GHz
Question:
Can you please provide me with a way to avoid the memory problem?
I know cursors are usually only used as the last option, but I am still new in SQL and don't know how to write this in a better way.
There is also no value which presses the query to be very performant, so it can take its time.
Thanks
Query:
Create TABLE #test
(
[cArtNr] varchar(100),
kArtikel int,
attribute varchar(100),
Value varchar(100)
)
DECLARE #S varchar(max),
#Split char(1),
#Split2 char(1),
#Split3 char(1),
#y varchar(max),
#X xml,
#1 varchar(100),
#2 varchar(100),
#3 varchar(100),
#4 int;
DECLARE loop_cursor CURSOR
FOR SELECT
cArtNr, kArtikel, [cBeschreibung]
FROM
[mydb].[dbo].[tartikel]
OPEN loop_cursor
FETCH NEXT FROM loop_cursor;
WHILE ##FETCH_STATUS = 0
BEGIN
FETCH NEXT FROM loop_cursor into #3,#4,#S;
/* ### Select Description string and cut everything outside from table tags ###*/
Select #S
Select #S = RIGHT(#S,LEN(#S)-CHARINDEX('<table>',#S)-6)
Select #S = LEFT(#S,CHARINDEX('</table>',#S)-1)
Select #S = Replace(#S,'<tr><td>','')
Select #S = Replace(#S,'</td><td>',';')
Select #S = Replace(#S,'</td></tr>','#')
SELECT #S
/* ### Split Variables ### */
Select #Split = ';',
#Split2 = '#'
Select #S = Replace(#S,#Split2,'</s><s>')
SELECT #x = CONVERT(xml,'<root><s>' + REPLACE(#S,#Split,'</s><s>') + '</s></root>')
Select #x
DECLARE calc3 SCROLL Cursor FOR
SELECT [Value] = T.c.value('.','varchar(100)')
FROM #X.nodes('/root/s') T(c)
OPEN calc3;
FETCH NEXT FROM calc3;
WHILE ##FETCH_STATUS = 0
BEGIN
FETCH NEXT FROM calc3;
FETCH PRIOR FROM calc3
INTO #1
FETCH NEXT FROM calc3
INTO #2
Insert into #test ([cArtNr],kArtikel,attribute,Value)
Values (#3, #4, #1, #2);
FETCH NEXT FROM calc3;
END
DEALLOCATE calc3;
FETCH NEXT FROM loop_cursor;
END
DEALLOCATE loop_cursor;
Select * from #test
Sample string:
<b>Thermal Armor mit Strömungsventil Gezielter Luftstrom für optimale Wärmeableitung</b><br \><br \>TUF Thermal Armor ist mehr als eine coole Abdeckung im Camouflage-Stil: Zwei Lüfter liefern einen kräftigen Luftstrom für schnelle Kühlung. Der umkehrbare Luftstrom bläst Staub vom Kühlkörper der VRM, das Strömungsventil steuert die Luftzufuhr der Heatpipe – ideal für Systeme mit Flüssigkühlung!<br \><br \><b>Thermal Radar 2Individuelle Lüftersteuerung, Kühlung des ganzen Systems</b><br \><br \>Mit Z97 Thermal Radar 2 können Sie die Lüfter von ASUS-Grafikkarten sowie Gehäuselüfter steuern. Mehrere Sensoren auf dem Board und das mitgelieferte Thermistorkabel überwachen die Temperatur von Grafikkarten und anderen Komponenten in Echtzeit. Sie können die Lüfterdrehzahlen manuell anpassen oder mit einem Klick automatisch optimieren.<br \><br \><b>TUF ICe Die Schaltzentrale der Systemkühlung</b><br \><br \>Das TUF-Entwicklungsteam von ASUS hat einen vollkommen neuen Chip für eine unglaublich präzise Temperaturüberwachung und Lüftersteuerung geschaffen.<br \><br \>Mit dem TUF ICe können Sie sich auf die Überwachung der Temperatursensoren und Lüfterdrehzahlen verlassen – bei manuellen Einstellungen ebenso wie im Ein-Klick-Automatikmodus.<br \><br \><b>TUF-Komponenten Garantiert hart im Nehmen</b><br \><br \>- TUF 10K-Ti-Kondensatoren20 % temperaturbeständiger, 5 × längere Lebensdauer<br \>- TUF-Drosseln aus Speziallegierung: 13,6 % kühler = maximale Haltbarkeit<br \>- TUF-MOSFETs Widerstandsarme MOSFETs gemäß Militärstandard<br \>- Niedriger RDS-Durchlasswiderstand = höhere Energieeffizienz = geringere Wärmeabgabe durch die MOSFETs<br \><br \><b>Dust Defender</b><br \><b>Weniger Staub für längere Lebensdauer</b><br \><b>DRAM</b><br \><br \>Das TUF-Design schützt die rückwärtigen Anschlüsse, die Erweiterungs- und Speichersteckplätze sowie wichtige Buchsen vor Staub, der die Systemleistung beeinträchtigen kann. Ein Filter verhindert, dass der rückwärtige Lüfter Staub ansaugt. Die Dust Defender schützen vor Ablagerungen, damit Ihr PC länger leistungsfähig und stabil bleibt.<br \><br \><b>Tests auf ServerniveauSystematische Stabilitätstests</b><br \><br \>TUF bietet umfassende Lösungen an – darauf sind wir stolz. Wir testen unsere Produkte nicht isoliert, sondern betrachten die Stabilität und Haltbarkeit des Gesamtsystems. Wir unterziehen unsere Mainboards extremen Temperaturschwankungen (Thermoschockprüfung), ausgiebigen Dauertests (MTBF-Prüfung) und vielen Stabilitätstests auf Serverniveau, damit Sie sich unter allen Umständen auf Ihr TUF-Mainboard verlassen können.<br \><br \><b>5 Jahre Garantie Garantierte Zuverlässigkeit</b><br \><br \>Jedes TUF-Motherboard beruht auf Komponenten, die militärischen Anforderungen gerecht werden, und durchläuft einen Dauertest auf Serverniveau mit mehr als 7.000 Stunden an Kompatibilitätsprüfungen mit mehr als 1.000 Geräten. Auf TUF können Sie sich verlassen. Deshalb gewähren wir auf jedes Board 5 Jahre Garantie.<br \><br \><b>TUF ESD Guards Leistungsstarker ESD-Schutz für längere Lebensdauer</b><br \><br \>Elektrostatische Entladungen kommen unerwartet und können erhebliche Schäden verursachen. Der TUF-Entladungsschutz übertrifft die Anforderungen von Industriestandards um 30 % und sorgt dafür, dass alle elektrostatischen Entladungen geerdet werden – für eine längere Lebensdauer der Komponenten.<br \><br \>- Tastatur- und Mausanschlüsse: Zusätzliche Leiter auf TVS-Dioden<br \>- USB-3/2.0-Anschlüsse Suppressordioden (TVS) auf der Platine und Kondensatorschutz für Oberflächen- und DIP-Bauteile<br \>- Audioanschlüsse: Kondensatorschutz für die vorderen und hinteren Audioanschlüsse<br \>- LAN-Anschluss TVS-Dioden- und Überspannungsschutz am LAN-Anschluss gegen extreme Spannungsspitzen wie im Fall von Blitzeinschlag<br \><br \><b>Laut Medienberichten das intuitivste UEFI-BIOS</b><br \><br \>Das eleganteste grafische BIOS mit Maussteuerung ist jetzt noch ansprechender. Unerfahrene Anwender und routinierte Overclocker finden sich mit dem einfachen EZ-Modus und dem erweiterten Modus gleichermaßen zurecht.<br \><br \>MyFavorite-Liste: Tuning-Optionen und Tools schneller finden – mit MyFavorites<br \>EZ Tuning Wizard – Übertakten und RAID: Wählen Sie Ihre Hardware, und optimieren Sie die Systemleistung mithilfe leicht verständlicher Szenarien. Oder richten Sie Ihre RAID-Konfiguration auf schnellere Datentransfers aus.<br \>EZ XMP: DRAM-Leistung mit einem Klick verbessern<br \>Intuitive grafische Lüftersteuerung: Feintuning einzelner Lüfter durch Anpassung der Kurve mit der Maus<br \>Echtzeit-Hardwareüberwachung: Der aktuelle Status der wichtigsten Systemkomponenten auf einen Blick<br \><br \><b>EZ-Modus</b><br \><br \>- Lüfterprofil: Detaillierte CPU- und Gehäuselüfterwerte für sofortige Kühlung<br \>- SATA-Informationen: SATA-Informationen, um Speichergeräte einfacher zu finden<br \>- Schnelle Uhreinstellung: Uhrzeit und Datum bequem mit der Maus einstellen<br \>- EZ XMP: DRAM-Leistung mit einem Klick verbessern<br \><br \><b>Erweiterter Modus</b><br \><br \>- Shortcuts: Mit der Eingabetaste Shortcuts für häufig verwendete Einstellungen anlegen oder mit F4 einen Shortcut direkt anwählen<br \>- Notizen: Schnell und bequem Notizen rund um das BIOS machen<br \>- Änderungsprotokoll: Letzte Änderung verfolgen und Profile auf USB-Stick speichern<br \>- SATA-Anschlüsse umbenennen: SATA-Anschlüsse zur besseren Orientierung umbenennen<br \><br \><b>Der Turbo für Kreative</b><br \><br \>Wenn Sie Design im Blut haben, führt kein Weg am TUF Z97-Motherboard vorbei! USB 3.0 Boost steigert die Übertragungsgeschwindigkeit von USB auf 170 %, die SATA Express-Anschlüsse ermöglichen eine Datenübertragung mit bis zu 10 Gbit/s. Für Sie bedeutet das jederzeit zügiges Arbeiten ohne Zwangspausen, während Bilder übertragen und Dateien gespeichert oder geladen werden. Und unsere exklusive Turbo-LAN-Technologie optimiert automatisch Ihre Internetverbindung – für schnelle und reibungslose Dateitransfers. Das TUF Z97 eignet sich auch für Multi-Head-Arbeitsplätze und sorgt für absolute Stabilität – selbst bei einer Auflösung von 4K/UHD!<br \><br \><b>TUF Audio Design</b><br \><br \>TUF Audio Design optimiert nach Ihren Vorstellungen im Handumdrehen die Audioeinstellungen für Töne, Gespräche, Filme und Ihre Lieblingsmusik. Die Abschirmung, der professionelle Leitungsaufbau und die hochwertigen Komponenten sorgen für außergewöhnliche Klarheit und Klangtreue.<br \><br \>- Audio-Abschirmung Präzise Analog-digital-Trennung und stark reduzierte Interferenzen<br \>- Audioverstärker Exzellenter Klang für Kopfhörer und Lautsprecher<br \>- Schaltung gegen Knackgeräusche Vermindertes Knackgeräusch beim Start an allen Audioeingängen<br \>- Spezielle Leitungsanordnung Getrennte Schichten für den linken und rechten Kanal wahren die Qualität empfindlicher Audiosignale<br \><br \><b>Ihr PC, Ihre Welt</b><br \><br \>Die ASUS HomeCloud überwindet Grenzen. Sie können aus der Ferne auf Ihren PC zugreifen, Multimedia-Dateien streamen und alle Ihre Daten verwalten – von jedem Ort aus, unabhängig vom Speicherort. Nutzen Sie die integrierte Wake-on-WAN-Funktion, um Ihren PC mit einem Mobilgerät zu aktivieren und zu steuern – und zwar jederzeit und überall. Sie können sogar Ihre Festplatte in eine private Cloud verwandeln und sich damit von den Speicherbeschränkungen der Cloud-Dienste unabhängig machen. Mit der HomeCloud wird Ihr PC das Tor zur Ihrer Welt.<br \><br \><b>Der PC-Eigenbau war noch nie so einfach</b><br \><br \>Wir wissen, wie Sie Ihren PC montieren und nutzen. Deshalb machen wir Ihnen das Leben leichter – von der Montage über Systemeinrichtung und Monitoring bis hin zu Firmware- und Hardware-Updates. Und deshalb suchen wir stets nach neuen und interessanten Lösungen, damit der PC-Eigenbau einfach und unkompliziert ist und Spaß macht.<br \><br \><b>Montage</b><br \>Mit ASUS Q-Design geht die PC-Montage schnell und einfach vonstatten<br \><br \><b>Einstellungen</b><br \>Die ASUS AI Suite 3 ist die Schaltzentrale für alle Systemeinstellungen<br \><br \><b>Monitoring</b><br \>ASUS Push Notice überwacht den PC-Status, wenn Sie unterwegs sind<br \><br \><b>BIOS-Updates</b><br \>ASUS USB BIOS Flashback aktualisiert Ihr BIOS auch ohne montierte CPU<br \><br \><table><tr><td>ACPI-Version:</td><td>5.0a</td></tr>
<tr><td>Anzahl DisplayPort Anschlüsse:</td><td>1</td></tr>
<tr><td>Anzahl Ethernet LAN (RJ-45) Anschlüsse:</td><td>2</td></tr>
<tr><td>Anzahl HDMI Anschlüsse:</td><td>1</td></tr>
<tr><td>Anzahl USB 2.0 Anschlüsse:</td><td>4</td></tr>
<tr><td>Anzahl USB 2.0 Schnittstellen:</td><td>2</td></tr>
<tr><td>Anzahl USB 3.0 Anschlüsse:</td><td>4</td></tr>
<tr><td>Arbeitsspeicher Typ:</td><td>DIMM</td></tr>
<tr><td>Audio Kanäle:</td><td>7.1</td></tr>
<tr><td>BIOS-Speichergröße:</td><td>64 MB</td></tr>
<tr><td>BIOS-Typ:</td><td>UEFI AMI</td></tr>
<tr><td>Breite:</td><td>30,5 cm</td></tr>
<tr><td>Clear CMOS-Jumper:</td><td>Ja</td></tr>
<tr><td>CPU Ventilatorstecker:</td><td>Ja</td></tr>
<tr><td>Eingebauter Ethernet-Anschluss:</td><td>Ja</td></tr>
<tr><td>Ethernet Schnittstellen Typ:</td><td>Gigabit</td></tr>
<tr><td>Front Panel Audiostecker:</td><td>Ja</td></tr>
<tr><td>HDD Schnittstellen:</td><td>Serial ATA III</td></tr>
<tr><td>Kompatible Prozessoren:</td><td>Celeron, Core i3, Core i5, Core i7, Pentium</td></tr>
<tr><td>Komponente für:</td><td>PC</td></tr>
<tr><td>Motherboard Chipsatz:</td><td>Intel Z97</td></tr>
<tr><td>Motherboard Chipsatz Familie:</td><td>Intel</td></tr>
<tr><td>Motherboardformfaktor:</td><td>ATX</td></tr>
<tr><td>Parallele Verarbeitungstechnologie:</td><td>Quad-GPU CrossFireX, Quad-GPU SLI</td></tr>
<tr><td>PCI-Express x16 (Gen 2.x)-Anschlüsse:</td><td>1</td></tr>
<tr><td>PCI-Express x16 (Gen 3.x)-Anschlüsse:</td><td>2</td></tr>
<tr><td>PCI-Express x16-Slots:</td><td>3</td></tr>
<tr><td>PCI-Express x1-Slots:</td><td>3</td></tr>
<tr><td>Prozessorfamilie:</td><td>Intel</td></tr>
<tr><td>Prozessorsockel:</td><td>Socket H3 (LGA 1150)</td></tr>
<tr><td>RAID Level:</td><td>0, 1, 5, 10</td></tr>
<tr><td>RAM-Speicher maximal:</td><td>32 GB</td></tr>
<tr><td>S/PDIF aus Stecker:</td><td>Ja</td></tr>
<tr><td>S/PDIF-out Anschluss:</td><td>Ja</td></tr>
<tr><td>SATA Anschlüsse:</td><td>6</td></tr>
<tr><td>SATA III Anschlüsse:</td><td>6</td></tr>
<tr><td>Tiefe:</td><td>24,4 cm</td></tr>
<tr><td>TPM-Verbinder:</td><td>Ja</td></tr>
<tr><td>Unterstützte Arbeitsspeicher:</td><td>DDR3-SDRAM</td></tr>
<tr><td>Unterstützte Arbeitsspeichergeschwindigkeit:</td><td>1333, 1600, 1866 MHz</td></tr>
<tr><td>USB 3.0-Anschlüsse:</td><td>2</td></tr>
<tr><td>Zahl der Chassisventilatorstecker:</td><td>4</td></tr>
<tr><td>Zahl der EATX Energie Stecker:</td><td>1</td></tr>
</table>
As #James suggested it would be faster on client side.
However if you want to process in SQL you can avoid cursor by using temp table and insert bulk data directly in result table.
IF OBJECT_ID('tempdb..#Results') IS NOT NULL DROP TABLE #Results
Create TABLE #Results(
cArtNr varchar(100)
,kArtikel int
,attribute varchar(100)
,Value varchar(100)
)
declare #tb table
(
id int identity(1,1)
,cArtNr varchar(100)
,kArtikel int
)
Declare #MaxRec int
,#CurrentRec int = 1
,#val varchar(max)
,#xmlData xml
,#cArtNr varchar(100)
,#kArtikel int
Insert into #tb(cArtNr, kArtikel)
SELECT cArtNr, kArtikel FROM tartikel
SET #MaxRec = ##ROWCOUNT
WHILE #MaxRec >= #CurrentRec
BEGIN
/* Assuming tartikel has kArtikel as unique key else join both keys i.e. kArtikel & cArtNr */
SELECT #val = tar.cBeschreibung
,#cArtNr = tmp.cArtNr
,#kArtikel = tmp.kArtikel
FROM tartikel tar
JOIN #tb tmp
ON tar.kArtikel = tmp.kArtikel
WHERE tmp.id = #CurrentRec
/* Assuming this parsing will cover all scenarios */
Select #val = RIGHT(#val,LEN(#val)-CHARINDEX('<table>',#val)-6)
Select #val = LEFT(#val,CHARINDEX('</table>',#val)-1)
Select #val = Replace(#val,'<tr><td>','')
Select #val = Replace(#val,'</td><td>',';')
Select #val = Replace(#val,'</td></tr>','#')
SELECT #xmlData = CONVERT(xml,'<root><s>' + REPLACE(#val,'#','</s><s>') + '</s></root>')
Insert into #Results (cArtNr,kArtikel,attribute,Value)
SELECT #cArtNr
,#kArtikel
,SUBSTRING(T.c.value('.','varchar(100)'), 1, CASE CHARINDEX(';', T.c.value('.','varchar(100)')) WHEN 0 THEN LEN(T.c.value('.','varchar(100)')) ELSE CHARINDEX(';', T.c.value('.','varchar(100)'))-1 END) attribute
,SUBSTRING(T.c.value('.','varchar(100)'), CASE CHARINDEX(';', T.c.value('.','varchar(100)')) WHEN 0 THEN 0 ELSE CHARINDEX(';', T.c.value('.','varchar(100)'))+1 END, LEN(T.c.value('.','varchar(100)'))+1 ) Value
FROM #xmlData.nodes('/root/s') T(c)
SET #CurrentRec = #CurrentRec + 1
END
SELECT * FROM #Results
I have an artikel description saved in an artikel table which I want to split and insert into sql table
SELECT [cBeschreibung]
FROM [dbname].[dbo].[tartikel]
where cArtNr = 'TF90062750'
The description always looks like the following.
<b>Hohe Performance</b><br \><b>Systemoptimierung mit einem Klick</b><br \><b>Übertaktungs- und Energiesparfunktionen, digitale Leistungsregelung, konfigurierbare Lüftersteuerung und flexible Netzwerk- und Audioeinstellungen</b><br \><br \>Komplexes Systemtuning mit einem Klick: Die 5-fach-Optimierung von ASUS macht aus Ihrem System einen intelligenten PC. Wichtige Parameter werden in Echtzeit dynamisch optimiert. Sie profitieren von exzellenter CPU-Leistung, Energieeinsparungen im Alltag, besonders stabiler digitaler Spannungsregelung und leiser Systemkühlung. Und jetzt werden auch Netzwerk- und Audioeinstellungen an Ihre Anwendungen angepasst. Mit der 5-fach-Optimierung ist Ihr PC für alles gerüstet – von Gaming über Unterhaltung bis hin zu Produktivitätsanwendungen.<br \><br \>- Spiele laufen flüssig, mit hoher Leistung, priorisierter Bandbreite und lebendigem Sound.<br \>- Die Lüfter bleiben bei geringer Auslastung flüsterleise und sorgen beim Gaming für maximale Kühlleistung.<br \>- Filme werden ruckelfrei wiedergegeben.<br \>- Energieeinsparungen senken die Stromkosten.<br \><br \><b>Lüftersteuerung für maximale Kühlleistung und minimale Geräuschentwicklung</b><br \><b>Fan Xpert 3</b><br \>Fan Xpert 3 ist die Schaltzentrale für drei- und vierpolige CPU- und Gehäuselüfter. Die Lüftersteuerung erfasst die Eigenschaften aller Lüfter und nimmt für jeden einzelnen angepasste Einstellungen vor, die sich an den mit Sensoren gemessenen Temperaturen in verschiedenen Zones des PCs orientieren. Auf diese Weise wird für jeden Lüfter die optimale Balance zwischen Kühlleistung und geringem Betriebsgeräusch gefunden. Fan Xpert 3 unterstützt den hardwareseitigen PWM/DC-Kombimodus bei CPU- und Gehäuselüftern. Es kann die Drehzahl des CPU-Lüfters sogar bis unter den Standard-Mindestwert verringern, sodass er besonders leise und stromsparend läuft.<br \><br \><b>Preisgekröntes UEFI-BIOS</b><br \>Das eleganteste grafische BIOS mit Maussteuerung ist jetzt noch ansprechender. Unerfahrene Anwender und routinierte Overclocker finden sich mit dem einfachen EZ-Modus und dem erweiterten Modus gleichermaßen zurecht.<br \><br \><b>Erweiterte</b><br \><b>RAM-Übertaktungsmöglichkeiten</b><br \>Jetzt können Sie Ihren Speicher auf bis zu 3.200 MHz übertakten. Unser exklusives T-Topology-Design schafft überragende Übertaktungsmöglichkeiten unter Volllast und minimiert dabei Störungen und Signalreflektionen. Die Speicherkanäle verlaufen in gleichem Abstand zur CPU und bieten so eine besonders ausgewogene Steuerung über mehrere Speichermodule und eine insgesamt verbesserte Speicherkompatibilität.<br \><br \><b>Schnellere Festspeicher mit</b><br \><b>SATA Express</b><br \>SATA Express erreicht eine Datenübertragungsrate von bis zu 10 Gbit/s mit zwei PCIE-2.0-Lanes und ist damit bereit für die Anforderungen der Zukunft. Aktuelle SSDs erreichen bis zu 550 MB/s und nähern sich damit der Obergrenze von SATA mit 6 Gbit/s. Als Verbindungsstandard der nächsten Generation macht SATA Express Ihr System bereit für die Zukunft und ist dabei rückwärtskompatibel zu bis zu zwei SATA-Laufwerken.<br \><br \><b>Ein schnelleres System mit M.2</b><br \>Mit der doppelten nativen Bandbreite von PCI Express 2.0 unterstützt M.2 Datenübertragungsraten von bis zu 10 Gbit/s. Dies empfiehlt sich insbesondere für das Laufwerk des Betriebssystems und beschleunigt so den gesamten PC. Die Unterstützung für Intel® Rapid Storage Technology gewährleistet einen noch schnelleren Datenzugriff, schneller reagierende Anwendungen und eine Reaktivierung aus dem Ruhezustand in wenigen Sekunden.*<br \>* Weitere Hinweise zur Unterstützung von Intel® Rapid Storage Technology finden Sie in den technischen Daten der einzelnen Modelle"<br \><br \><b>Die Geschwindigkeit von Thunderbolt™2 schon heute</b><br \>Die Karten der ThunderboltEX-II-Serien von ASUS sind die ersten von Intel® zertifizierten Thunderbolt™-2-Erweiterungskarten. Damit können Sie Ihr System jederzeit auf Thunderbolt 2 aufrüsten. Sie profitieren von bidirektionalen Übertragungsraten von bis zu 20 Gbit/s – das ist das Vierfache von USB 3.0! Erleben Sie Filme mit unglaublichen Details auf aktuellen 4K/UHD-Monitoren, und nutzen Sie gleichzeitig Festspeichergeräte mit hohem Bandbreitenbedarf.<br \><br \><b>Schneller reagieren, besser punkten</b><br \><b>Turbo App</b><br \>Das Geräusch feindlicher Schritte in der Ferne. Eine Drehung und eine gezielte Salve – Sie waren wieder einmal schneller. Als Gamer wissen Sie, dass man nur mit schnellen Reaktionen gewinnt. Deshalb benötigen Sie ASUS Turbo App – ein intuitives Tuning-Panel, das Ihnen bei Ihren Lieblingsspielen einen entscheidenden Vorteil verschaffen kann. Übertakten Sie die CPU, priorisieren Sie die Datenübertragung von Spielen, und optimieren Sie die Audioeinstellungen für klaren Klang und verständliche Unterhaltungen im Spiel. Nur der Schnellste gewinnt. Rüsten Sie sich deshalb mit Turbo App.<br \><br \><b>Makelloser Sound</b><br \><b>versetzt Sie mitten ins Spiel</b><br \><b>Crystal Sound 2</b><br \>Crystal Sound 2 optimiert nach Ihren Vorstellungen im Handumdrehen die Audioeinstellungen für Spiele, Gespräche, Filme und Ihre Lieblingsmusik. Die Abschirmung, der professionelle Leitungsaufbau und die hochwertigen Komponenten, darunter japanische Audio-Kondensatoren und Operationsverstärker (OpAmps), sorgen für außergewöhnliche Klarheit und Klangtreue. Entdecken Sie Klangqualität in einer neuen Dimension und den entscheidenden Vorteil im Spiel.<br \><br \><b>Doppelter Vorteil für Gamer</b><br \>Zwischen Sieg und Niederlage liegen manchmal nur Millisekunden. Deshalb sind Mainboards von ASUS mit hochmoderner Netzwerktechnologie ausgestattet, die Ihnen den entscheidenden Vorteil verschafft.<br \><br \><b>Turbo LAN</b><br \>Turbo LAN mit der Traffic-Shaping-Technologie cFosSpeed minimiert Verzögerungen und überzeugt mit einer intuitiven Oberfläche. Reduzieren Sie Verzögerungen ohne Netzwerkkenntnisse um einen Faktor von bis zu 1,45. Und für Experten bietet der erweiterte Modus umfassende Einstellmöglichkeiten.<br \><br \><b>Ihr PC, Ihre Welt</b><br \>Die ASUS HomeCloud überwindet Grenzen. Sie können aus der Ferne auf Ihren PC zugreifen, Multimedia-Dateien streamen und alle Ihre Daten verwalten – von jedem Ort aus, unabhängig vom Speicherort. Nutzen Sie die integrierte Wake-on-WAN-Funktion, um Ihren PC mit einem Mobilgerät zu aktivieren und zu steuern – und zwar jederzeit und überall. Sie können sogar Ihre Festplatte in eine private Cloud verwandeln und sich damit von den Speicherbeschränkungen der Cloud-Dienste unabhängig machen. Mit der HomeCloud wird Ihr PC das Tor zur Ihrer Welt.<br \><br \><b>Jederzeit und überall volle</b><br \><b>Kontrolle mit Remote GO!</b><br \>Mit Remote GO! haben Sie die volle Kontrolle über Ihren PC, auch wenn Sie unterwegs sind. Greifen Sie auf Dateien zu, die Sie zu Hause vergessen haben, oder arbeiten Sie am PC, während Sie unterwegs oder in der Natur sind. Außerdem können Sie öffentliche Cloud-Dienste verwalten oder Dateien zwischen Ihrem PC und anderen Geräten mit einem Klick synchronisieren.<br \><br \><b>Die Medienzentrale für Datenaustausch und Unterhaltung</b><br \><b>Media Streamer</b><br \>Greifen Sie überall auf die Multimedia-Inhalte auf Ihrem PC zu. Hören Sie auf dem PC gespeicherte Musik, während Sie im Café sitzen, oder zeigen Sie Ihren Freunden Ihren Lieblingsfilm auf einem Smart-TV. Mit ASUS Media Streamer sind Sie überall gut unterhalten.<br \><br \><b>Kabellos in die Zukunft</b><br \><b>NFC EXPRESS 2 &</b><br \><b>Wireless Charger</b><br \>Steuern Sie Ihren PC, und laden Sie Mobilgeräte auf – bequem und kabellos mit NFC Express 2 und Wireless Charger! Steuern Sie den PC durch Antippen, oder legen Sie Ihr Mobilgerät ab, um es wie von Zauberhand aufzuladen. Kabel sind einfach hoffnungslos überholt.<br \><br \><b>Bewährte Qualität. Dauerhaftes Vertrauen.</b><br \><b>Strenge Kompatibilitäts- und Prüfanforderungen</b><br \>Wir sind der größte Mainboard-Hersteller der Welt und bekannt dafür, unsere Produkte auf Benutzer auszurichten – auf Sie. Unsere Ingenieure orientieren sich an strengen Vorgaben, um die Qualität unserer Produkte während ihrer gesamten Lebensdauer zu gewährleisten, und verwenden für die Serienproduktion nur ausgewählte Bauteile. Unsere Mainboards haben ihre Kompatibilität mit mehr als 1.000 Komponenten und Geräten unter Beweis gestellt und mindestens 7.000 Prüfstunden absolviert. Sie können also sicher sein, dass ASUS-Mainboards für alle Umgebungen und Anwendungen geeignet sind. Wenn Sie die besten Komponenten für Ihren PC auswählen möchten, vertrauen Sie auf ein Mainboard von ASUS.<br \><br \><b>Der PC-Eigenbau war noch nie so einfach</b><br \>Wir wissen, wie Sie Ihren PC montieren und nutzen. Deshalb machen wir Ihnen das Leben leichter – von der Montage über Systemeinrichtung und Monitoring bis hin zu Firmware- und Hardware-Updates. Und deshalb suchen wir stets nach neuen und interessanten Lösungen, damit der PC-Eigenbau einfach und unkompliziert ist und Spaß macht.<br \><br \><b>Intel CPU und Chipsatz-Features</b><br \><b>Intel® LGA 1150, 4. Generation, bereit für die 4. und 5. Generation der Prozessoren Core™ i7/Core™ i5/Core™ i3/Pentium®/Celeron®</b><br \>Das Mainboard unterstützt die 4. und 5. Generation der Intel®-Prozessoren Core™ i7/i5/i3/Pentium®/Celeron® mit dem Sockel LGA 1150 und integrierten iGPU-, Speicher- und PCI-Express-Controllern. Unterstützt werden ferner im Prozessor integrierte Grafiklösungen, 2-Kanal-DDR3-Speicher und 16 PCI-Express-3.0/2.0-Lanes. Damit ist eine überragende Grafikleistung garantiert.<br \><br \><b>Intel® Z97 Express-Chipsatz</b><br \>Der Intel® Z97 Express-Chipsatz unterstützt die 4. Generation der Intel®-Prozessoren mit Sockel LGA1150 (Core™ i7/i5/i3/Pentium®/Celeron®). Durch serielle Punkt-zu-Punkt-Verbindungen erzielt der Chipsatz eine höhere Bandbreite und Stabilität und damit eine verbesserte Leistung. Der Z97 bietet bis zu 6 USB-3.0-Anschlüsse, 6 SATA-Anschlüsse mit 6 Gbit/s und Unterstützung für M.2 mit 10 Gbit/s für schnellen Datenabruf. Der Intel® Z97 Express-Chipsatz unterstützt ferner iGPU, sodass integrierte Grafikprozessoren von Intel genutzt werden können.<br \><br \><b>Intel® Smart Response-Technologie</b><br \><b>SSD-Geschwindigkeit mit HDD-Kapazität</b><br \>Ein SSD-Laufwerk (mit mindestens 18,6 GB an freiem Speicherplatz) dient hierbei als Pufferspeicher für Daten, auf die häufig zugegriffen wird. Die wesentlichen Vorteile liegen in verkürzten Ladezeiten und einem geringeren Stromverbrauch, da die (mechanische) Festplatte weniger stark beansprucht wird. Diese Technologie verbindet die Geschwindigkeit von SSD-Laufwerken mit der Kapazität herkömmlicher Festplatten und steigert so die Leistung um das bis zu 6-Fache.<br \><br \><b>Intel® Smart Connect-Technologie</b><br \><b>Automatischer Datenabruf im Ruhezustand für verkürzte Wartezeiten</b><br \>Damit kann Ihr Computer für bestimmte Anwendungen Daten aus dem Internet abrufen, auch wenn das System im Ruhezustand ist. Das bedeutet eine geringere Wartezeit zum Beispiel bei der Synchronisierung mit der Cloud und eine effizientere Nutzung des PC.<br \><br \><b>Intel® Rapid Start-Technologie Sofortige Aktivierung des PC aus dem Ruhezustand</b><br \>Damit kann Ihr Computer in wenigen Sekunden aus dem Ruhezustand aktiviert werden. Indem der Systemspeicher auf einem SSD-Laufwerk gespeichert wird, ist der PC schneller wieder betriebsbereit und spart dennoch Strom.<br \><br \><table><tr><td>ACPI-Version:</td><td>5.0</td></tr>
<tr><td>Anzahl DVI-D Anschlüsse:</td><td>1</td></tr>
<tr><td>Anzahl Ethernet LAN (RJ-45) Anschlüsse:</td><td>1</td></tr>
<tr><td>Anzahl HDMI Anschlüsse:</td><td>1</td></tr>
<tr><td>Anzahl PS/2 Anschlüsse:</td><td>1</td></tr>
<tr><td>Anzahl USB 2.0 Anschlüsse:</td><td>2</td></tr>
<tr><td>Anzahl USB 2.0 Schnittstellen:</td><td>2</td></tr>
<tr><td>Anzahl USB 3.0 Anschlüsse:</td><td>4</td></tr>
<tr><td>Anzahl VGA (D-Sub) Anschlüsse:</td><td>1</td></tr>
<tr><td>Arbeitsspeicher Typ:</td><td>DIMM</td></tr>
<tr><td>ATX Stromstecker (24-pol.):</td><td>Ja</td></tr>
<tr><td>Audio Chip:</td><td>HDA</td></tr>
<tr><td>Audio Kanäle:</td><td>7.1</td></tr>
<tr><td>BIOS-Speichergröße:</td><td>64 MB</td></tr>
<tr><td>BIOS-Typ:</td><td>UEFI AMI</td></tr>
<tr><td>Breite:</td><td>30,5 cm</td></tr>
<tr><td>Clear CMOS-Jumper:</td><td>Ja</td></tr>
<tr><td>CPU Ventilatorstecker:</td><td>Ja</td></tr>
<tr><td>Eingebauter Ethernet-Anschluss:</td><td>Ja</td></tr>
<tr><td>EPS Stromstecker (8-pin):</td><td>Ja</td></tr>
<tr><td>Ethernet Schnittstellen Typ:</td><td>Gigabit</td></tr>
<tr><td>EZ Stecker:</td><td>Ja</td></tr>
<tr><td>Front Panel Audiostecker:</td><td>Ja</td></tr>
<tr><td>HDD Schnittstellen:</td><td>Serial ATA III</td></tr>
<tr><td>Kompatible Prozessoren:</td><td>Celeron, Core i3, Core i5, Core i7, Pentium</td></tr>
<tr><td>Komponente für:</td><td>PC</td></tr>
<tr><td>Kopfhörerausgänge:</td><td>1</td></tr>
<tr><td>LAN-Controller:</td><td>Intel I218V</td></tr>
<tr><td>Mikrofon, Line-In Anschluss:</td><td>Ja</td></tr>
<tr><td>Motherboard Chipsatz:</td><td>Intel Z97</td></tr>
<tr><td>Motherboard Chipsatz Familie:</td><td>Intel</td></tr>
<tr><td>Motherboardformfaktor:</td><td>ATX</td></tr>
<tr><td>Ohne ECC:</td><td>Ja</td></tr>
<tr><td>Parallele Verarbeitungstechnologie:</td><td>Quad-GPU CrossFireX, Quad-GPU SLI</td></tr>
<tr><td>PCI-Express x1 (Gen 2.x)-Anschlüsse:</td><td>4</td></tr>
<tr><td>PCI-Express x16 (Gen 2.x)-Anschlüsse:</td><td>1</td></tr>
<tr><td>PCI-Express x16 (Gen 3.x)-Anschlüsse:</td><td>2</td></tr>
<tr><td>Prozessorfamilie:</td><td>Intel</td></tr>
<tr><td>Prozessorsockel:</td><td>Socket H3 (LGA 1150)</td></tr>
<tr><td>RAID Level:</td><td>0, 1, 5, 10</td></tr>
<tr><td>RAM-Speicher:</td><td>32 GB</td></tr>
<tr><td>S/PDIF aus Stecker:</td><td>Ja</td></tr>
<tr><td>S/PDIF-out Anschluss:</td><td>Ja</td></tr>
<tr><td>SATA Anschlüsse:</td><td>6</td></tr>
<tr><td>SATA III Anschlüsse:</td><td>6</td></tr>
<tr><td>Speicherkanäle:</td><td>doppelt/Dual</td></tr>
<tr><td>Speichersteckplätze:</td><td>4</td></tr>
<tr><td>Tiefe:</td><td>24,4 cm</td></tr>
<tr><td>TPM-Verbinder:</td><td>Ja</td></tr>
<tr><td>Unbuffered Speicher:</td><td>Ja</td></tr>
<tr><td>Unterstützte Arbeitsspeicher:</td><td>DDR3-SDRAM</td></tr>
<tr><td>Unterstützte Arbeitsspeichergeschwindigkeit:</td><td>1333, 1600, 1866, 2000, 2133, 2200, 2400, 2600, 2666, 2800, 2933, 3000 MHz</td></tr>
<tr><td>USB 3.0-Anschlüsse:</td><td>2</td></tr>
<tr><td>Zahl der Chassisventilatorstecker:</td><td>4</td></tr>
<tr><td>Zahl der EATX Energie Stecker:</td><td>1</td></tr>
</table>
I would like to to split this description and implement the artikel atributes, into an sql table. In the Description the atributes are inside the table.
So that I later can implement a filter on my webpage
I am trying with the following script
Create TABLE #test(
[cArtNr] varchar(10),
attribute varchar(100),
Value varchar(100)
)
DECLARE #S varchar(max),
#Split char(1),
#Split2 char(1),
#Split3 char(1),
#y varchar(max),
#X xml,
#Z int = 1,
#1 varchar(10),
#2 varchar(10),
#3 varchar(10),
#4 float;
/* ### Select Description string and cut everything outside from table tags ### */
SELECT #S = (SELECT
[cBeschreibung]
FROM [dbname].[dbo].[tartikel]
where cArtNr = 'TF90062750')
Select #S
Select #S = RIGHT(#S,LEN(#S)-CHARINDEX('<table>',#S)-6)
Select #S = LEFT(#S,CHARINDEX('</table>',#S)-1)
SELECT #S
/* ### Split Variables ### */
Select #Split = '</td></tr>',
#Split2 = '</td><td>',
#Split3 = '<tr><td>'
--Select #S = Replace(#S,#Split2,'</s><s>')
Select #y = Replace(#S,#Split3,'')
SELECT #x = CONVERT(xml,'<root><s>' + REPLACE(#y,#Split,'</s><s>') + '</s></root>')
Select #x
DECLARE calc3 SCROLL Cursor FOR
SELECT [Value] = T.c.value('.','varchar(20)')
FROM #X.nodes('/root/s') T(c)
SET #3 = 'TF90062750';
OPEN calc3;
FETCH NEXT FROM calc3;
WHILE ##FETCH_STATUS = 0
BEGIN
FETCH NEXT FROM calc3;
FETCH PRIOR FROM calc3
INTO #1
FETCH NEXT FROM calc3
INTO #2
Insert into #test ([cArtNr],attribute,Value)
Values (#3, #1, #2);
FETCH NEXT FROM calc3;
END
DEALLOCATE calc3;
Select * from #test
I am somehow stuck, I would appreciate a little help
Please let me know if you would choose another approach and how it is done.
My result is like and this seems false
TF90062750 /s>s>tr>/s NULL
TF90062750 tr>td>ACPI NULL
TF90062750 tr>td>ACPI NULL
i´va a little Question. I need the Data of One Node including its Subnodes. The Node has an Attribute named id.
How i can select the Node that i need when i´m using an xsl:template?
Here is an example of the XML, that i use:
<Seminar id="1" xmlns="">
<Name>Eintägiges Meditations-Seminar </Name>
<Seminartext><div class="ExternalClassEC5CACB3C1AD43F8AA5D2228F51FEE6E"><p>Die Meditation ist…<br>… mehr als nur eine Form des Innehaltens, sie ist mehr als<br>eine innere Einkehr, mehr als eine Technik, mit der man zur<br>Ruhe kommt. Wir stehen nicht mehr im Mittelpunkt, sondern<br>wenden uns von uns selber – von unseren Sorgen, Ängsten<br>und Nöten, aber auch von unseren Ambitionen, ja selbst von<br>unseren guten Intentionen - ab und stellen uns bewusst der<br>Wirklichkeit, die viel größer ist als wir und selbst als unsere<br>kühnsten Gedanken. Es ist, als wenn wir bei der Betrachtung<br>unseres Lebensbildes ein Stück von der Tafel zurücktreten,<br>um das gesamte Bild besser in den Blick zu bekommen. Somit<br>ist die Meditation auch der Versuch, uns selbst „in Perspektive<br>zu stellen“. Religiös gesprochen öffnen wir uns in<br>der Meditation der alles umfassenden Wahrheit Gottes. Das<br>ist befreiend und hilft gerade auch oft Menschen, die zwar<br>ehrlich suchen, aber in ihrem Gebetsleben eine gewisse Dürre<br>und Trockenheit durchleben. Die Praxis der Meditation wird<br>dann von vielen als wohltuend empfunden. Sie kann den Menschen<br>gerade in der heutigen Zeit helfen, zu innerer Ruhe<br>und Ausgeglichenheit zu finden. Am Ende besteht auch die<br>Chance, dass wir die Gabe der Unterscheidung schärfen und<br>sogar zu besseren Entscheidungen kommen. Menschen, die<br>meditieren, berichten häufig, dass sie gelassener und ausgeglichener<br>werden. Am Ende ist dies auch eine Frage gesunder<br>Lebensführung. <strong>Deshalb können vor allem auch Entscheidungsträger</strong><br><strong>in verantwortlichen Positionen in der Meditation</strong><br><strong>Kraft und Orientierung finden. Sie ist ein Angebot für alle, die</strong><br><strong>ihr Gebetsleben auffrischen wollen und darin auch Antworten</strong><br><strong>auf die ganz praktischen Probleme des Alltags suchen.</strong><br><br>Die Vorträge während des Seminars hält Frau <strong>Kim Nataraja</strong><br>von der <strong>Weltgemeinschaft für Christliche Meditation</strong><br>(www.wccm.org). Sie war früher Hochschuldozentin für moderne<br>Sprachen, heute ist sie Direktorin der internationalen<br>Schule der Weltgemeinschaft für Christliche Meditation in<br>London. Sie ist Autorin des Buches „Dancing with your Shadow“,<br>Herausgeberin und Co-Autorin des Buches „Journey<br>to the Heart – Christian Contemplation through the centuries<br>– an illustrated guide“ sowie Mitgestalterin am interreligiösen<br>Dialog im Rahmen der Initiative „Way of Peace“ mit<br>dem Dalai Lama.<br><br>Die Vorträge werden in <strong>deutscher Sprache</strong> gehalten. Das Seminar<br>wird organisatorisch vom Vorsitzenden der Academie<br>Kloster Eberbach, Marcus Lübbering, betreut. Es wird in<br>Kooperation mit dem RKW Hessen Rationalisierungs- und<br>Innovationszentrum der Wirtschaft e. V. durchgeführt.<br></p></div></Seminartext>
<Programm><div class="ExternalClassB1AC2A7AB508444BB4D38D4F40D2B8D8"><table width="100%" cellspacing="0" class="ms-rteTable-default"><tbody><tr class="ms-rteTableEvenRow-default"><td class="ms-rteTableEvenCol-default" style="width:50%;">9.30 Uhr</td><td class="ms-rteTableOddCol-default" style="width:50%;">Begrüßung und Einführung<br>Marcus Lübbering</td></tr><tr class="ms-rteTableOddRow-default"><td class="ms-rteTableEvenCol-default"></td><td class="ms-rteTableOddCol-default">Grußwort<br>Sascha Gutzeit, RKW Hessen</td></tr><tr class="ms-rteTableEvenRow-default"><td class="ms-rteTableEvenCol-default">10.00 Uhr</td><td class="ms-rteTableOddCol-default">Vortrag:<br>„ Meditation – eine Antwort auf unsere<br>Probleme in der heutigen Welt?“</td></tr><tr class="ms-rteTableOddRow-default"><td class="ms-rteTableEvenCol-default">11.00 Uhr</td><td class="ms-rteTableOddCol-default">Kaffeepause</td></tr><tr class="ms-rteTableEvenRow-default"><td class="ms-rteTableEvenCol-default">11.30 Uhr</td><td class="ms-rteTableOddCol-default">Vortrag:<br>„Meditation als neue alte Lösung“</td></tr><tr class="ms-rteTableOddRow-default"><td class="ms-rteTableEvenCol-default">12.30 Uhr</td><td class="ms-rteTableOddCol-default">Meditationszeit</td></tr><tr class="ms-rteTableEvenRow-default"><td class="ms-rteTableEvenCol-default">13.00 Uhr</td><td class="ms-rteTableOddCol-default">Imbiss</td></tr><tr class="ms-rteTableOddRow-default"><td class="ms-rteTableEvenCol-default">14.15 Uhr</td><td class="ms-rteTableOddCol-default">Themen (Erarbeitung in Kleingruppen)<br>und Antworten (im Plenum)</td></tr><tr class="ms-rteTableEvenRow-default"><td class="ms-rteTableEvenCol-default">16.00 Uhr</td><td class="ms-rteTableOddCol-default">Abschlusskaffee mit Austausch</td></tr><tr class="ms-rteTableOddRow-default"><td class="ms-rteTableEvenCol-default">16.30 Uhr</td><td class="ms-rteTableOddCol-default">Meditationszeit</td></tr><tr class="ms-rteTableFooterRow-default"><td rowspan="1" class="ms-rteTableFooterEvenCol-default">17.00 Uhr</td><td rowspan="1" class="ms-rteTableFooterOddCol-default">Ende des Seminars und<br>Möglichkeit zu persönlichen Fragen</td></tr></tbody></table><p></p></div></Programm>
<Datum>30.10.2013 23:00:00</Datum>
<Kosten><div class="ExternalClass47BDE88ABE304276B9CF19DBB86C56F9"><p> je nach Selbsteinschätzung zwischen 50,- und 150,- Euro. </p></div></Kosten>
<Seminarleiter>Kim Nataraja, London Weltgemeinschaft für Christliche Meditation</Seminarleiter>
<Anmeldeschluss>22.10.2013 22:00:00</Anmeldeschluss>
<PDF>http://192.168.10.30:12000/media/73c6ab3f-3b2c-4de4-8bf8-aae8014f8bb1/-1079363063/PDF-Dateien/Einladungsflyer%20Meditations-Seminar%202013.pdf</PDF>
</Seminar>
<Seminar id="2" xmlns="">
<Name>Test</Name>
<Seminartext><div class="ExternalClass687E629C238349BB81D317CC51A47E6A">TEst<p></p></div></Seminartext>
<Programm><div class="ExternalClassBE4ABC2BC486407FAC83EB6F15F952CB">TEst<p></p></div></Programm>
<Datum>16.07.2014 22:00:00</Datum>
<Kosten><div class="ExternalClass760FA47ECB3245A1952D85DAF58688D7"><p>fhfghfg</p></div></Kosten>
<Seminarleiter>hfghfghfghfgh</Seminarleiter>
<Anmeldeschluss>24.06.2014 22:00:00</Anmeldeschluss>
<PDF>fsdfsdfsdf</PDF>
</Seminar>
Can anywone help me?
Thanks a lot
Jörn-Dennis Heldt
The question is actually more about XPath than XSL.
In order to process a node selecting it by it's attribute value you need to use the format: /path/to/the/node[attribute='value to match']
In your case, it would look something like:
<xsd:template match="Seminar[id='1']">
<!-- some processing -->
</xsd:template>