Umbenennen einer Datei basierend auf einer Auswahlliste

Umbenennen einer Datei basierend auf einer Auswahlliste

Ich muss Tausende von Bilddateien mit einer Reihe von Namenslisten umbenennen, beispielsweise Fotos von Produkten mit den Namen topview, topview1, topview2, usw. und sideview, sideview1, ..., , , , usw. Daher möchte ich diese Arbeit automatisieren, indem ich einen speziellen Ordner mit dem Namen „Produktname“ erstelle und alle Bilder dieses Produkts dorthin kopiere. Ich möchte die Bilder in diesem Ordner folgendermaßen umbenennen: Wenn ich ein Bild auswähle und auf „ Umbenennen“ drücke (natürlich in der Miniaturansicht), wird eine Dropdown-Liste mit einer voreingestellten Namensliste (oder ein Dialogfenster usw.) wie , , , angezeigt und eine Option zur Eingabe eines neuen Namens, wenn dieser nicht in der Liste voreingestellt ist. Wenn einer schon vergeben ist, wird beim nächsten Auswählen ein neuer Name erstellt , dann , usw.sideviewnbackviewfrontview1234F2topviewsideviewfrontviewbackviewtopviewtopviewtopview1topview2 topviewn

Ich kenne den Code nicht, mit dem Windows eine Datei durch Drücken von umbenennt, F2also versuche ich es anders. Ich habe ein Windows-Anwendungsformular basierend auf vb.net über Visual Studio programmiert, aber ich komme mit meinem Code nicht weiter. Bitte geben Sie mir einen Rat, damit es funktioniert. Mein Code enthält den folgenden laufenden Code und Designercode:

Ausführen des Codes:

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

Designercode:

<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

Mein Design sieht folgendermaßen aus: Klicken Sie auf die Schaltfläche 4 (Datei auswählen), um einen Dateinamen in einem Ordner auszuwählen und die Eingabe zu erhalten.alte Bezeichnungund die Combobox fürneuer NameKlicken Sie dann auf Button1 (Umbenennen), um die Datei umzubenennen. Nach einem erfolgreichen Vorgang führt der Button „Weiter“ eine Schleife aus, um die nächste Eingabe abzurufen. Klicken Sie auf „Abbrechen“, um die Anwendung zu beenden, wenn alles abgeschlossen ist. Es sind noch viele weitere Codes erforderlich, um alle meine Ziele zu erreichen, aber ich möchte den Schlüsselprozess (Umbenennen in vb.net) verstehen, um weiterzukommen.

verwandte Informationen