問題タブ [binary]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
linux - シリアル端末経由のバイナリ データ
組み込みデバイスと通信する唯一の方法は、シリアル ポートです。デフォルトでは、組み込み Linux はこのポートを端末として使用します。この端末を無効にして、シリアル リンクを使用してバイナリ データを転送するにはどうすればよいですか? rx や tx などのコマンドを聞いたことがありますが、見つかりません。
/dev/tty から read() して /dev/tty に write() するだけでよいと思いますが、エラーメッセージやデータストリームの混乱がないことを確認したいと思います。
algorithm - 特定のビット数が設定された複数の数値の作成
問題
32ビットの数値を作成する必要があり(符号付きか符号なしかは関係ありません。とにかく最上位ビットが設定されることはありません)、各数値には特定の数のビットが設定されている必要があります。
素朴な解決策
もちろん、最も簡単な解決策はゼロから始めることです。ループ内では、数値が 1 ずつ増加し、ビット数がカウントされます。カウントが目的の値である場合、数値がリストに格納されます。そうでない場合は、ループが繰り返されます。十分な数が見つかった場合、ループは停止します。もちろん、これは問題なく動作しますが、必要なビット数が非常に多くなると、非常に遅くなります。
より良いソリューション
(たとえば) 5 ビットが設定されている最も単純な数値は、最初の 5 ビットが設定されている数値です。この番号は簡単に作成できます。ループ内で最初のビットが設定され、数値が 1 つ左にシフトされます。このループは 5 回実行され、5 ビットが設定された最初の数値が見つかりました。次の数も簡単に作成できます。ここで、数値が 6 ビット幅であると仮定し、最高の数値は設定されていません。ここで、最初の 0 ビットを右にシフトし始め、101111、110111、111011、111101、111110 を取得します。前に別の 0 を追加してこのプロセスを繰り返すことで、これを繰り返すことができます。0111110、1011110、1101110 など。ただし、この単純なアプローチを使用すると、1010111 などの数字が除外されるため、数字が必要以上に速く成長します。
次の数値のビット数に関係なく、設定する必要があるビット数に関係なく、使用できるすべての可能な順列、一般的なアプローチを作成するより良い方法はありますか?
c# - C#で数値をビット列として出力するにはどうすればよいですか?
C# で、数値をバイナリとしてコンソールに出力するにはどうすればよいですか? たとえば、値が 20 の uint がある場合、コンソールに 00010100 (バイナリでは 20) を出力するにはどうすればよいですか?
database - データベースに画像を保存するのに最適な形式は何ですか?
最適な速度/サイズのために、バイナリ、base64などのデータベースに画像を保存するのに最適な形式は何ですか?
c - Linux:libcライブラリに依存しない動作するプログラムを作成することは可能ですか?
C
単一のライブラリ呼び出しを使用していなくても、たとえばexit()を使用していなくても、実行可能なプログラミング言語でプログラムを作成できるかどうか疑問に思います。
もしそうなら、それは明らかにライブラリ(libc、ld-linux)にまったく依存しません。
c# - System.Net.Mail を使用して電子メールに添付ファイルを追加するにはどうすればよいですか?
byte[] として表される Excel ドキュメントがあり、それを電子メールの添付ファイルとして送信したいと考えています。
添付ファイルを作成するのに少し問題があります。
次のコンストラクタを持つ Attachment を作成できます。
現時点での私の考えは、byte[] から MemoryStream を作成し、添付ファイルを作成するメソッドに渡すことです。
残念ながら、MemoryStream から目的のファイル名とコンテンツ タイプを取得する方法がわかりません。また、正しいコンテンツ タイプを提供する方法もわかりません。プレーンテキスト、Pdf、Rtf などのオプションがありますが、Excel ドキュメントに使用する必要があるものとしてすぐに思いつくものはありません。
私が見つけることができる最も近いのはMediaTypeNames.Application.Octetで、次のように述べています。
Octet メンバーは、添付ファイルに一般的なバイナリ データが含まれていることを指定します。
ただし、これを使用する場合でも、ストリームのプロパティとして渡すことができない限り、電子メールを送信するための私の方法は、Excel ドキュメントとしてバイト [] しか送信できません...
おそらく他の種類のストリームを使用できますか? または、必要な詳細を含む独自のタイプのストリームを作成する必要がありますか。
確かに誰かが以前にこのことをしたことがあり、Microsoft はこれをこのレベルまで考え抜いていたに違いありません....
どんな助けでも大歓迎です。
更新: ファイル名を文字列として受け取るコンストラクターを使用する回答には投票しないでください。ストリームを使用するものを使用して本当に助けが必要です...ファイルをディスクに書き込んで電子メールで送信し、すぐに削除する必要がないようにしたいです。それを可能にする方法があるので、できればそれを使いたいです。
ソリューションの更新
コンラッドは私が探していたものを見つけることができました! ありがとう山盛り!
提供されたリンクのコンテンツに何かが起こった場合に備えて、提案された解決策を文書化します.
このソリューションの功績はwww.systemnetmail.comにあります
私の場合、ファイル名とファイル形式を文字列として取得するようにメソッドを変更する必要があることを意味します。Octet を使用してみます...しかし、失敗した場合は、公式の MIME タイプを渡します。
すべてを考慮すると、これは非常に明白な解決策です...しかし、私はそれを解決する助けに感謝しています...そして良いことは、この解決策が同じ問題を抱えている将来のプログラマーのために文書化されることです.
助けてくれてありがとう!
svn - バイナリを SVN に保存することは許容されますか?
ランタイム プロジェクトのバイナリ ファイルを共有したいと考えています。そのため、すべてのチーム メンバーが現在の作業バージョンを使用できます。実行時バイナリを SVN に保存することは許容されますか?
text - .NETのファイルのコンテンツタイプを確認するにはどうすればよいですか?
ファイル名が与えられ、ディスクからそのファイル名を読み取って、その内容をネットワーク経由で送信できる必要があります。ファイルがテキストかバイナリかを判断できる必要があるので、StreamReaderとBinaryReaderのどちらを使用するかがわかります。コンテンツタイプを知る必要があるもう1つの理由は、コンテンツタイプがバイナリの場合、データをネットワーク経由で送信する前にデータをMIMEエンコードする必要があるためです。また、コンテンツタイプが何であるか(テキストの場合はエンコーディングを含む)を消費者に伝えたいと思います。
ありがとう!
mysql - MySQL GUID/UUID の保存
これは、UUID() によって生成された MySQL GUID/UUID をバイナリ (16) に変換するために思いついた最良の方法です。
そして、それを BINARY(16) に格納します
私が知っておくべきこの方法でそれを行うことの意味はありますか?
c++ - C++ でさまざまな形式のデータを読み取る
初めてのリアル バイナリ パーサー (tiff リーダー) を作成していますが、メモリの割り当て方法について質問があります。IFD エントリの TiffSpec クラス内に構造体を作成したいと考えています。これらのエントリは常に 12 バイトですが、その特定のエントリで指定された型に応じて、末尾の値が異なる型 (またはファイル内の別の場所へのアドレス) になる可能性があります。この種のデータをキャストするための最良の方法は何でしょうか? 私が扱うと思われる最小サイズのメモリは1バイトです。