Переименовать файл на основе списка выбора

Переименовать файл на основе списка выбора

Мне нужно переименовать тысячи файлов изображений с набором списков имен, таких как фотографии продуктов с именами topview, topview1, topview2, и т. д., и sideview, sideview1, ..., , , , и т. д. Поэтому я хочу автоматизировать эту работу, создав специальную папку с именем product name и скопировав в нее все изображения этого продукта. Я хочу переименовывать изображения в этой папке следующим образом: всякий раз, когда я выбираю изображение и нажимаю « переименовать» (конечно, в виде миниатюр), появляется раскрывающийся список предустановленных имен (или диалоговое окно и т. д.), например , , , и возможность ввести новое имя, если оно не предустановлено в списке, если оно было занято ранее, то при следующем выборе будет создано новое имя , а затем и т. д.sideviewnbackviewfrontview1234F2topviewsideviewfrontviewbackviewtopviewtopviewtopview1topview2 topviewn

Я не знаю кода, который Windows переименовывает файл нажатием, F2поэтому я пробую другой способ, я кодирую форму приложения Windows на основе vb.net через Visual Studio, но я застрял со своим кодом. Пожалуйста, дайте мне совет, как заставить его работать. Мой код включает в себя код выполнения и код дизайнера следующим образом:

Выполняемый код:

Imports System.IO
Public Class Form1


    Private Sub Button4_Click(sender As Object, e As EventArgs) Handles Button4.Click
        If New Global.System.Windows.Forms.OpenFileDialog() With {
            .Title = "Select a file",
            .InitialDirectory = "D:\TestRen",
            .Filter = "All files (*.*)|*.*|All files (*.*)|*.*",
            .FilterIndex = 2,
            .RestoreDirectory = True
        }.ShowDialog() = Global.System.Windows.Forms.DialogResult.OK Then
            Dim strFilename As String = New OpenFileDialog() With {
            .Title = "Select a file",
            .InitialDirectory = "D:\TestRen",
            .Filter = "All files (*.*)|*.*|All files (*.*)|*.*",
            .FilterIndex = 2,
            .RestoreDirectory = True
        }.FileName
            'get extension
            Dim extn As String = Path.GetExtension(strFilename)
        End If
    End Sub

    Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
        Dim var As String
        var = ComboBox1.Text
        'It is stucking at this rename syntax
        My.Computer.FileSystem.RenameFile(strFilename, var + extn)
    End Sub
End Class

Код дизайнера:

<Global.Microsoft.VisualBasic.CompilerServices.DesignerGenerated()> _
Partial Class Form1
    Inherits System.Windows.Forms.Form

    'Form overrides dispose to clean up the component list.
    <System.Diagnostics.DebuggerNonUserCode()> _
    Protected Overrides Sub Dispose(ByVal disposing As Boolean)
        Try
            If disposing AndAlso components IsNot Nothing Then
                components.Dispose()
            End If
        Finally
            MyBase.Dispose(disposing)
        End Try
    End Sub

    'Required by the Windows Form Designer
    Private components As System.ComponentModel.IContainer

    'NOTE: The following procedure is required by the Windows Form Designer
    'It can be modified using the Windows Form Designer.  
    'Do not modify it using the code editor.
    <System.Diagnostics.DebuggerStepThrough()> _
    Private Sub InitializeComponent()
        Me.ComboBox1 = New System.Windows.Forms.ComboBox()
        Me.Button1 = New System.Windows.Forms.Button()
        Me.Button2 = New System.Windows.Forms.Button()
        Me.Button3 = New System.Windows.Forms.Button()
        Me.Button4 = New System.Windows.Forms.Button()
        Me.SuspendLayout()
        '
        'ComboBox1
        '
        Me.ComboBox1.FormattingEnabled = True
        Me.ComboBox1.Items.AddRange(New Object() {"Front view", "Back view", "Left view", "Right view"})
        Me.ComboBox1.Location = New System.Drawing.Point(15, 112)
        Me.ComboBox1.Name = "ComboBox1"
        Me.ComboBox1.Size = New System.Drawing.Size(309, 21)
        Me.ComboBox1.TabIndex = 0
        '
        'Button1
        '
        Me.Button1.Location = New System.Drawing.Point(370, 112)
        Me.Button1.Name = "Button1"
        Me.Button1.Size = New System.Drawing.Size(75, 23)
        Me.Button1.TabIndex = 1
        Me.Button1.Text = "Rename"
        Me.Button1.UseVisualStyleBackColor = True
        '
        'Button2
        '
        Me.Button2.Location = New System.Drawing.Point(370, 166)
        Me.Button2.Name = "Button2"
        Me.Button2.Size = New System.Drawing.Size(75, 23)
        Me.Button2.TabIndex = 2
        Me.Button2.Text = "Next"
        Me.Button2.UseVisualStyleBackColor = True
        '
        'Button3
        '
        Me.Button3.Location = New System.Drawing.Point(370, 239)
        Me.Button3.Name = "Button3"
        Me.Button3.Size = New System.Drawing.Size(75, 23)
        Me.Button3.TabIndex = 3
        Me.Button3.Text = "Cancel"
        Me.Button3.UseVisualStyleBackColor = True
        '
        'Button4
        '
        Me.Button4.Location = New System.Drawing.Point(370, 57)
        Me.Button4.Name = "Button4"
        Me.Button4.Size = New System.Drawing.Size(75, 23)
        Me.Button4.TabIndex = 6
        Me.Button4.Text = "Select a file"
        Me.Button4.UseVisualStyleBackColor = True
        '
        'Form1
        '
        Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 13.0!)
        Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font
        Me.ClientSize = New System.Drawing.Size(488, 312)
        Me.Controls.Add(Me.Button4)
        Me.Controls.Add(Me.Button3)
        Me.Controls.Add(Me.Button2)
        Me.Controls.Add(Me.Button1)
        Me.Controls.Add(Me.ComboBox1)
        Me.Name = "Form1"
        Me.Text = "Select a name"
        Me.ResumeLayout(False)

    End Sub

    Friend WithEvents ComboBox1 As ComboBox
    Friend WithEvents Button1 As Button
    Friend WithEvents Button2 As Button
    Friend WithEvents Button3 As Button
    Friend WithEvents Button4 As Button
End Class

Мой дизайн выглядит так: нажмите кнопку 4 (Выбрать файл), чтобы выбрать имя файла в папке и получить вводные данныестарое имяи выпадающий список дляновое имязатем нажмите кнопку 1 (Переименовать), чтобы переименовать файл, после успешного процесса кнопка Далее выполнит цикл, чтобы получить следующий ввод, кнопка Отмена, чтобы выйти из приложения, когда все будет сделано. Нужно больше кодов, чтобы получить все мои цели, но я хочу понять ключевой процесс (переименование в vb.net), чтобы пойти дальше.

Связанный контент