/// <summary> /// erzeugt einen StringBuilder mit den Hex-Werten des <see cref="BinaryReaderWriter"/> /// </summary> /// <param name="br"></param> /// <param name="start">Index des 1. Bytes</param> /// <param name="length">Länge des Bereiches</param> /// <param name="bytesperline">wenn größer 0 wird für die entsprechende Anzahl Bytes jeweils eine neue Zeile verwendet</param> /// <returns></returns> static public StringBuilder DumpMemory(BinaryReaderWriter br, int start = -1, int length = -1, int bytesperline = -1) { if (start >= 0) { br.Seek(start); } byte[] buff = br.ReadBytes(length > 0 ? length : (int)(br.Length - br.Position)); return(DumpMemory(buff, 0, buff.Length, bytesperline)); }
/// <summary> /// ab der der Position des Start-Bits im <see cref="BinaryReaderWriter"/> wird die benötigte Anzahl Bits (als komplette Bytes) eingelesen /// und als Text aufbereitet /// </summary> /// <param name="br"></param> /// <param name="start">Anzahl der zu ignorierenden Bits ab der akt. Byteposition</param> /// <param name="length">wenn größer 0 die Anzahl der Bits</param> /// <param name="bitsperline">wenn größer 0 die Anzahl der Bits je Textzeile</param> /// <param name="low2high">je Byte beginnend mit Bit 0 oder 7</param> /// <returns></returns> static public StringBuilder Dumpstream(BinaryReaderWriter br, int start = -1, int length = -1, int bitsperline = 8, bool low2high = false) { if (start >= 0) { br.Seek(start); } byte[] buff = br.ReadBytes(length > 0 ? 1 + length / 8 : (int)(br.Length - br.Position)); return(Dumpstream(br, 0, length, bitsperline, low2high)); }