unity报错【3】FormatException: Input string was not in a correct format.

这篇具有很好参考价值的文章主要介绍了unity报错【3】FormatException: Input string was not in a correct format.。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

1.报错信息:FormatException: Input string was not in a correct format.****

2.解决办法:

把代码:

        m_XValue = float.Parse(xString);
        m_YValue = float.Parse(yString); 

改成:

        try
        {
            // Convert the strings to floats
            m_XValue = float.Parse(xString);
            m_YValue = float.Parse(yString);
        }
        catch { }

或者:文章来源地址https://www.toymoban.com/news/detail-506314.html

        if (float.TryParse(xString, out m_XValue) && float.TryParse(yString, out m_YValue))
        {
            m_XValue = float.Parse(xString);
            m_YValue = float.Parse(yString);
        }   // 没报错

3.报错测试用例:

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;

// create a GameObject
// create two Input Fields
// attach both Fields to the GameObject
// attach this script to the GameObject

public class Vector3__x : MonoBehaviour
{
    public InputField m_InputFieldX, m_InputFieldY;
    string xString, yString;
    float m_XValue, m_YValue;
    Vector3 m_NewPosition; 

    void Start()
    {
        // Vector3 m_NewPosition = new Vector3(0.0f, 0.0f, 0.0f);报错m_NewPosition doesn't exist,原因是局部变量有作用域
        m_NewPosition = new Vector3(0.0f, 0.0f, 0.0f);
    }

    void Update()
    {
        xString = m_InputFieldX.text;
        yString = m_InputFieldY.text;
        
        m_XValue = float.Parse(xString);
        m_YValue = float.Parse(yString);  
        // 报错FormatException: Input string was not in a correct format.


        /*float.TryParse(xString, out m_XValue);
        float.TryParse(yString, out m_YValue);
        m_XValue = float.Parse(xString);
        m_YValue = float.Parse(yString);
        // 报错FormatException: Input string was not in a correct format.*/


        /*if (float.TryParse(xString, out m_XValue) && float.TryParse(yString, out m_YValue))
        {
            m_XValue = float.Parse(xString);
            m_YValue = float.Parse(yString);
        }   // 没报错*/


        /*try
        {
            m_XValue = float.Parse(xString);
            m_YValue = float.Parse(yString);
        }
        catch { }  // 没报错*/


        m_NewPosition.x = m_XValue;
        m_NewPosition.y = m_YValue;
        this.transform.position = m_NewPosition;
    }
}

到了这里,关于unity报错【3】FormatException: Input string was not in a correct format.的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包