小编Str*_*Orc的帖子

解码摩尔斯电码问题

我一直在努力完成这项任务已经有一段时间了,我决定需要一些帮助.我必须将莫尔斯代码转换为英语并将所有可能的翻译输出到列表框(甚至是乱码).搜索已经出现了很多不同的线程,但没有任何用处,因为他们要么不是这种语言,要么是过时的(VB6)代码.作业说明:

使用典型的点(.)和短划线( - )作为代码的书面表示,摩尔斯电码中的单词...... --- ..- ....-可能是索菲亚或尤金尼亚名称的编码在哪里分解字母:... | --- | ..-.| .. | .- Sofia.| ..- | - .|.| - .| .. | .- Eugenia

管道只是为了显示字符串是如何分解的.

我尝试过"For Each"循环,"For"循环,写入文本文件和回读,将字符串拆分1到4个字符,Select Case方法以及上面的所有组合我都能想到没有运气.我的For循环导致一组26个所有内容,但没有单词,只有一系列空格,然后是一个字母26次,然后是那个字母两次26次,依此类推.文本文件和将字符串拆分一个或两个字符会导致输出E,A或T,每个都在其自己的行上乘以字符串中的迭代次数,并将字符串拆分为三个或四个字符会导致相同或如果字符串不均匀分割,则会出现IndexOutOfRange错误.我回到了最接近我编码实际工作的东西,但输出结果只是英文字母输出.

我这次使用的是Linq查询,并且非常感谢帮助找出如何正确地遍历字符串以完成任务所要求的内容.

这是我到目前为止的代码:

Imports System.IO
Imports System.Text

Public Class Form1

    Dim MorseCode() = File.ReadAllLines("MorseCode2.txt")

    Private Sub input_TextChanged(sender As Object, e As EventArgs) Handles input.TextChanged

    End Sub

    Private Sub output_SelectedIndexChanged(sender As Object, e As EventArgs) Handles output.SelectedIndexChanged

    End Sub

    Private Sub help_Click(sender As Object, e As EventArgs) Handles help.Click

        'Displays the Morse Code …
Run Code Online (Sandbox Code Playgroud)

vb.net

2
推荐指数
1
解决办法
374
查看次数

标签 统计

vb.net ×1