Keresés

Hirdetés

Új hozzászólás Aktív témák

  • G.A.

    aktív tag

    válasz bucsupeti #5296 üzenetére

    Üdv!

    Akkor nincs egyszerűbb megoldás, végig kell zongorázni a karaktereken?

    Erre jutottam:

    int line_count = 0, byte_count = 0;
    byte[] TXBuffer = new byte[262144];
    byte[] hex_data = new byte[262144];

    string text = System.IO.File.ReadAllText(@"L:\stk500.hex");
    string[] textSplit = text.Split(':');

    foreach (string line in textSplit)
    {
    line_count++;
    foreach (byte character in line)
    {
    TXBuffer[byte_count++] = character;
    }
    }

    for (int i = 0, x = 0, temp; i < byte_count; )
    {
    if(TXBuffer[i] <= 0x39)
    {
    temp = (TXBuffer[i] - 0x30)*16;
    hex_data[x] += (byte)temp;
    }
    else if (TXBuffer[i] >= 0x41)
    {
    temp = (TXBuffer[i] - 0x37) * 16;
    hex_data[x] += (byte)temp;
    }
    i++;

    if (TXBuffer[i] <= 0x39)
    {
    temp = (TXBuffer[i] - 0x30);
    hex_data[x] += (byte)temp;
    }
    else if (TXBuffer[i] >= 0x41)
    {
    temp = (TXBuffer[i] - 0x37);
    hex_data[x] += (byte)temp;
    }
    i++; x++;
    }

    Este még nem működött, mert ezek hex_data[x] += (byte)temp; helyett ezt hex_data[x] = (byte)temp; írtam... Jól éreztem, hogy rá kellett aludni egyet.

    bucsupeti: köszönöm a segítséget!

    GA

    [ Szerkesztve ]

Új hozzászólás Aktív témák