これはしばらくの間私を悩ませていました。私はいくつかのアプローチを試みてきたが、どれも正しく働いていない。C#配列の並べ替え順序のカスタマイズ
私はIRCクライアントを作成しています。ユーザ名のリストを整理しようとしています(現在のチャンネルのユーザのアクセスレベルでソートする必要があります)。
これは簡単です。問題は、このリストは、ユーザーがチャンネルに参加するか退室するたびに追加する必要があるため、ユーザー名をリストから削除して、再結合時に正しい位置に再追加する必要があります。
各ユーザーのアクセスレベルは、各ユーザー名の先頭に1文字ずつ表示されます。これらの文字は予約されているため、シンボルの1つから始まる名前の潜在的な問題はありません。 (私はそれらをソートする必要があるために)最高から最低までの記号は以下のとおりです。〜 & % +
ユーザー@アクセスの任意の並べ替えなしに、ユーザー名の前に何のシンボルを持っていません。それらはリストの一番下になければなりません。例えば
:未ソート配列が含まれている可能性があり、以下: 〜USER1〜user84 @ user3に& USER8 + user39 user002 user2838%user29
そして要素は次の順序であるようにソートする必要があります を〜 user1〜user84 & user8 @ user3%user29 + user39 user002 user2838
ユーザーをアクセスレベル別にソートした後、アルファベット順にソートする必要があります。
誰かが私を助けることができたら、私は大変感謝しています。 ありがとうございます。
どのようにユーザー名のリストを保存していますか?それがデータベースの場合は、リストに入れる前にSQLを使用して必要な順序でデータを取得できますか? – BarneyHDog